package Repository.TestingSystem.Common; import Common.Constants; import Common.Database.SQLITE.SQLiteDatabase; import GlobalData.Settings.SettingName; import Repository.TestingSystem.SAPFOR.SapforConfiguration.SapforConfigurationDBTable; import Repository.TestingSystem.SAPFOR.SapforConfigurationCommand.SapforConfigurationCommandsDBTable; import Repository.TestingSystem.SAPFOR.ServerSapfor.ServerSapforsDBTable; import Repository.TestingSystem.DVM.Configuration.UI.ConfigurationDBTable; import Repository.TestingSystem.Common.Group.GroupsDBTable; import Repository.TestingSystem.Common.TSetting.TSetting; import Repository.TestingSystem.Common.TSetting.TSettingsDBTable; import Repository.TestingSystem.Common.Test.TestDBTable; import Common.Passes.PassCode_2021; import java.nio.file.Paths; public class TestsDatabase extends SQLiteDatabase { public ConfigurationDBTable configurations; public TestDBTable tests; public GroupsDBTable groups; public TSettingsDBTable settings; //-- public SapforConfigurationDBTable sapforConfigurations; public SapforConfigurationCommandsDBTable sapforConfigurationCommands; //---- public ServerSapforsDBTable serverSapfors; public TestsDatabase() { super(Paths.get(System.getProperty("user.dir"), "Data", Constants.tests_db_name + ".sqlite").toFile()); } @Override protected void initAllTables() throws Exception { addTable(configurations = new ConfigurationDBTable()); addTable(groups = new GroupsDBTable()); addTable(tests = new TestDBTable()); addTable(settings = new TSettingsDBTable()); //- addTable(sapforConfigurations = new SapforConfigurationDBTable()); addTable(sapforConfigurationCommands = new SapforConfigurationCommandsDBTable()); addTable(serverSapfors = new ServerSapforsDBTable()); } @Override public void Init() throws Exception { if (!settings.containsKey(SettingName.TaskMaxId)) Insert(new TSetting(SettingName.TaskMaxId, 63128)); if (!settings.containsKey(SettingName.SapforTaskMaxId)) Insert(new TSetting(SettingName.SapforTaskMaxId, 0)); } @Override public PassCode_2021 getSynchronizePassCode() { return PassCode_2021.SynchronizeTests; } public long IncMaxTaskId() throws Exception { TSetting setting = settings.get(SettingName.TaskMaxId); long res = setting.value; setting.value++; Update(setting); return res; } public long IncSapforMaxTaskId() throws Exception { TSetting setting = settings.get(SettingName.SapforTaskMaxId); long res = setting.value; setting.value++; Update(setting); return res; } }