Changeset 622 in Corrade


Ignore:
Timestamp:
Nov 27, 2017, 3:06:44 PM (3 months ago)
Author:
office
Message:
  • Automatically create path to group chat log files.
  • Set en-US culture by default for compatibility with Second Life.
Location:
Corrade
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • Corrade/Corrade.cs

    r621 r622  
    29982998        public void Program()
    29992999        {
     3000            // Set default en-US culture with no overrides in order to be compatible with SecondLife.
     3001            CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("en-US", false);
     3002            CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo("en-US", false);
     3003
    30003004            // Remove OpenMetaverse logging.
    30013005            Settings.LOG_LEVEL = OpenMetaverse.Helpers.LogLevel.None;
     
    56855689                                            try
    56865690                                            {
     5691                                                // Create path to group chat log.
     5692                                                FileInfo fileInfo = new FileInfo(o.ChatLog);
     5693
     5694                                                if (!fileInfo.Exists)
     5695                                                    Directory.CreateDirectory(fileInfo.Directory.FullName);
     5696
    56875697                                                lock (GroupLogFileLock)
    56885698                                                {
  • Corrade/commands/Corrade/Verify.cs

    r621 r622  
    99using System.IO;
    1010using System.Linq;
     11using System.Net;
    1112using System.Reflection;
    1213using System.Threading;
     
    1516using wasSharp.Linq;
    1617using wasSharpNET.Cryptography;
     18using wasStitchNET;
    1719using wasStitchNET.Repository;
    1820using SHA1 = System.Security.Cryptography.SHA1;
     
    3638                    var localFiles = Directory
    3739                        .GetFiles(Directory.GetCurrentDirectory(), "*.*", SearchOption.AllDirectories)
    38                         .AsParallel()
    3940                        .ToDictionary(file =>
    4041                                string.Join(@"/", file
     
    6162                    var verifies = 0;
    6263                    var modified = 0;
    63                     Tools
    64                         .GetReleaseFileHashes(server, Assembly.GetEntryAssembly().GetName().Version,
    65                             (int) corradeConfiguration.ServicesTimeout)
    66                         .GroupBy(o => o.Key)
    67                         .ToDictionary(o => o.Key, o => o.FirstOrDefault().Value)
    68                         .AsParallel()
    69                         .ForAll(item =>
    70                         {
    71                             string localHash;
    72                             if (!localFiles.TryGetValue(item.Key, out localHash) ||
    73                                 !string.Equals(item.Value, localHash, StringComparison.InvariantCultureIgnoreCase))
     64
     65                    try
     66                    {
     67                        Tools
     68                            .GetReleaseFileHashes(server, Assembly.GetEntryAssembly().GetName().Version,
     69                                (int) corradeConfiguration.ServicesTimeout)
     70                            .GroupBy(o => o.Key)
     71                            .ToDictionary(o => o.Key, o => o.FirstOrDefault().Value)
     72                            .AsParallel()
     73                            .ForAll(item =>
    7474                            {
    75                                 Interlocked.Increment(ref modified);
    76                                 return;
    77                             }
    78                             Interlocked.Increment(ref verifies);
    79                         });
     75                                string localHash;
     76                                if (!localFiles.TryGetValue(item.Key, out localHash) ||
     77                                    !string.Equals(item.Value, localHash, StringComparison.InvariantCultureIgnoreCase))
     78                                {
     79                                    Interlocked.Increment(ref modified);
     80                                    return;
     81                                }
     82                                Interlocked.Increment(ref verifies);
     83                            });
     84                    }
     85                    catch (StitchException ex)
     86                    {
     87                        if (!((HttpStatusCode) ex.GetHttpCode()).Equals(HttpStatusCode.OK))
     88                            throw new Command.ScriptException(Enumerations.ScriptError.PATH_NOT_FOUND);
     89                    }
    8090
    8191                    result.Add(Reflection.GetNameFromEnumValue(Command.ResultKeys.DATA),
Note: See TracChangeset for help on using the changeset viewer.