using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using DTS.Common.Import.Interfaces; using DTS.Slice.Users; using DTS.Common.Import.DatabaseLocks; namespace DTS.Common.Import.Factories { public static class DatabaseLocksFactory { //FB 36740 Factory to build objects which implement ILockImport public static List Create(ImportObject importObject, User user, double strandedLockTimeoutMinutes) { List lockImports = new List(); if (importObject.TestSetups().Any()) { var testSetupsLock = new LockImportTestSetups(user, strandedLockTimeoutMinutes); lockImports.Add(testSetupsLock); } if (importObject.Sensors().Any()) { var sensorsLock = new LockImportSensors(user, strandedLockTimeoutMinutes); lockImports.Add(sensorsLock); } if (importObject.StaticGroups().Any()) { var groupsLock = new LockImportGroups(user, strandedLockTimeoutMinutes); lockImports.Add(groupsLock); } return lockImports; } } }