using DTS.Slice.Users.UserSettings; namespace DTS.Common.DataModel.Classes.TestTemplate { public class TSRAIRGoTestSetup : DataPROWin7.DataModel.TestTemplate { private static object MY_LOCK = new object(); private static TSRAIRGoTestSetup _setup = null; public const string TEST_NAME = "TSRAIR_GO_TEST"; public override string Name { get => TEST_NAME; set {; } } protected TSRAIRGoTestSetup(DataPROWin7.DataModel.TestTemplate test) : base(test) { } protected TSRAIRGoTestSetup(TestSetupDefaults defaults) : base(defaults) { } public static TSRAIRGoTestSetup GetInstance(int userId, bool useCache = true) { lock (MY_LOCK) { if (null != _setup && useCache) { return _setup; } var template = DataPROWin7.DataModel.TestTemplateList.TestTemplatesList.GetTemplate(TEST_NAME, false); if (null != template) { _setup = new TSRAIRGoTestSetup(template); _setup.Load(true); return _setup; } var defaults = TestSetupDefaults.GetUserSettings(userId); _setup = new TSRAIRGoTestSetup(defaults); return _setup; } } } }