alielie
2026-09-10 9ec80cafc23f5ee3278cacce3c9f86f4087b435a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
using System.Collections.Concurrent;
using System.Collections.Generic;
 
namespace OpenTap.Addin
{
    public interface IStationGlobalsManager
    {
        IList<TestVariable> ReadFromLocal();
 
        ConcurrentDictionary<string, RuntimeVariable> ToRuntime(TestPlanRun run);
 
        bool WriteToLocal(IEnumerable<TestVariable> datas);
        void SetValue(string key, object value);
        T GetValue<T>(string key);
    }
 
    public class StationGlobalsManager
    {
        private static IStationGlobalsManager instance;
        public static void Register(IStationGlobalsManager manager)
        {
            if (instance == null)
            {
                instance = manager;
            }
        }
 
        public static T GetValue<T>(string key)
        {
            return instance.GetValue<T>(key);
        }
 
        public static void SetValue(string key, object value)
        {
            instance.SetValue(key, value);
        }
 
        public static IEnumerable<TestVariable> ReadFromLocal()
        {
            return instance.ReadFromLocal();
        }
 
        public static ConcurrentDictionary<string, RuntimeVariable> ToRuntime(TestPlanRun run)
        {
            return instance.ToRuntime(run);
        }
 
        public static bool WriteToLocal(IEnumerable<TestVariable> datas)
        {
            return instance.WriteToLocal(datas);
        }
    }
}