99 lines
2.3 KiB
C#
99 lines
2.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using MECF.Framework.Common.SCCore;
|
|
|
|
namespace Aitex.Core.RT.SCCore
|
|
{
|
|
public static class SC
|
|
{
|
|
public static ISCManager Manager { private get; set; }
|
|
|
|
private static Dictionary<string, ISCManager> ModularManager { get; set; } = new Dictionary<string, ISCManager>();
|
|
|
|
|
|
public static void SetItemValue(string name, object value)
|
|
{
|
|
Manager?.SetItemValue(name, value);
|
|
}
|
|
|
|
public static void SetItemValue(string name, bool value)
|
|
{
|
|
Manager?.SetItemValue(name, value);
|
|
}
|
|
|
|
public static void SetItemValue(string name, int value)
|
|
{
|
|
Manager?.SetItemValue(name, value);
|
|
}
|
|
|
|
public static void SetItemValue(string name, double value)
|
|
{
|
|
Manager?.SetItemValue(name, value);
|
|
}
|
|
|
|
public static void SetItemValue(string name, string value)
|
|
{
|
|
Manager?.SetItemValue(name, value);
|
|
}
|
|
|
|
public static SCConfigItem GetConfigItem(string name)
|
|
{
|
|
return Manager?.GetConfigItem(name);
|
|
}
|
|
|
|
public static bool ContainsItem(string name)
|
|
{
|
|
return Manager != null && Manager.ContainsItem(name);
|
|
}
|
|
|
|
public static SCConfigItem GetConfigItem(string path, string name)
|
|
{
|
|
return GetConfigItem(path + "." + name);
|
|
}
|
|
|
|
public static T GetValue<T>(string name, T defValue = default) where T : struct
|
|
{
|
|
return Manager?.GetValue<T>(name) ?? defValue;
|
|
}
|
|
|
|
public static string GetStringValue(string name)
|
|
{
|
|
return Manager?.GetStringValue(name);
|
|
}
|
|
|
|
public static T SafeGetValue<T>(string name, T defaultValue) where T : struct
|
|
{
|
|
return Manager?.SafeGetValue(name, defaultValue) ?? default(T);
|
|
}
|
|
|
|
public static string SafeGetStringValue(string name, string defaultValue)
|
|
{
|
|
return Manager?.SafeGetStringValue(name, defaultValue);
|
|
}
|
|
|
|
public static List<SCConfigItem> GetItemList()
|
|
{
|
|
return Manager?.GetItemList();
|
|
}
|
|
|
|
public static string GetConfigFileContent()
|
|
{
|
|
return Manager != null ? Manager.GetFileContent() : "";
|
|
}
|
|
|
|
public static string GetConfigFileContent(string module)
|
|
{
|
|
if (Manager != null && ModularManager != null && ModularManager.ContainsKey(module) && ModularManager[module] != null)
|
|
{
|
|
return ModularManager[module].GetFileContent();
|
|
}
|
|
return GetConfigFileContent();
|
|
}
|
|
|
|
public static void RegisterValueChangedCallback(string name, Action<object> newValue)
|
|
{
|
|
Manager?.RegisterValueChangedCallback(name, newValue);
|
|
}
|
|
}
|
|
}
|