예제 #1
0
 /// <summary>
 /// Initlize
 /// </summary>
 /// <param name="xml">xml</param>
 public static void Initlize(ConstKeyValue constKeyValue)
 {
     // keyvalue解析
     if (constKeyValue != null)
     {
         updateConstKeyValue(constKeyValue);
     }
 }
예제 #2
0
 private static void updateConstKeyValue(ConstKeyValue constKeyValue)
 {
     try
     {
         readerWriterLock.AcquireWriterLock(100);
         for (int i = 0; i < constKeyValue.Items.Count; i++)
         {
             if (!string.IsNullOrEmpty(constKeyValue.Items[i].Key))
             {
                 ConstItem kv = new ConstItem()
                 {
                     Key = constKeyValue.Items[i].Key.ToLower(), Value = constKeyValue.Items[i].Value
                 };
                 if (!constDic.ContainsKey(kv.Key))
                 {
                     constDic.Add(kv.Key, kv);
                 }
                 else
                 {
                     constDic[kv.Key] = kv;
                 }
             }
         }
     }
     catch (Exception ex)
     {
         logger.LogError(ex, "ConfigManager.updateConstKeyValue.Error");
     }
     finally
     {
         if (readerWriterLock.IsWriterLockHeld)
         {
             readerWriterLock.ReleaseWriterLock();
         }
     }
 }