package TestingSystem.Common.Configuration; import Common.Database.DBObject; import Common.Database.riDBObject; import Common.Utils.TextLog; import Common.Utils.Utils; import TestingSystem.Common.Group.Group; import TestingSystem.Common.Group.Json.GroupsJson; import TestingSystem.Common.Settings.Json.SettingsArrayJson; import TestingSystem.Common.Settings.Settings; import TestingSystem.Common.Test.Json.TestsJson; import TestingSystem.Common.Test.Test; import com.sun.org.glassfish.gmbal.Description; import javax.swing.*; import java.util.Vector; public class Configuration extends riDBObject { //конфигурация = данные для пакета. //группы //тесты //настройки тестируемого объекта //пакет = запуск конфигурация + тестируемый объект //--- public int maxtime = 300; @Description("DEFAULT 0") public int autoTesting = 0; @Description("DEFAULT 1") public int kernels = 1; //ядра //---- public String printAuto() { return autoTesting > 0 ? "Да" : "Нет"; } public void SwitchAuto() { autoTesting = (autoTesting == 0) ? 1 : 0; } public ImageIcon GetAutoIcon() { return Utils.getIcon("/icons/" + (autoTesting == 1 ? "RedPick" : "NotPick") + ".png"); } //-- @Description("DEFAULT ''") public String packedGroupsJson = ""; @Description("DEFAULT ''") public String packedTestsJson = ""; @Description("DEFAULT ''") public String packedSettingsJson = ""; //-- public void saveGroupsAsJson(Vector groups) { packedGroupsJson = Utils.jsonToPrettyFormat(Utils.gson.toJson(new GroupsJson(groups))); } public void saveTestsAsJson(Vector tests) { packedTestsJson = Utils.jsonToPrettyFormat(Utils.gson.toJson(new TestsJson(tests))); } public void saveSettingsAsJson(Vector settings) { packedSettingsJson = Utils.jsonToPrettyFormat(Utils.gson.toJson(new SettingsArrayJson(settings))); } //-- @Override public void SynchronizeFields(DBObject src) { super.SynchronizeFields(src); Configuration c = (Configuration) src; //-- maxtime = c.maxtime; autoTesting = c.autoTesting; kernels = c.kernels; //- packedGroupsJson = c.packedGroupsJson; packedTestsJson = c.packedTestsJson; packedSettingsJson = c.packedSettingsJson; } //- для автоматического тестирования главным образом. public boolean validate(TextLog log) { return true; } }