Files
VisualSapfor/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java

133 lines
4.5 KiB
Java
Raw Normal View History

package TestingSystem.SAPFOR.SapforConfiguration;
2023-09-17 22:13:42 +03:00
import Common.Current;
import Common.Database.*;
import Common.UI.DataSetControlForm;
import Common.UI.Tables.TableEditors;
2024-09-18 15:25:58 +03:00
import Common.UI.Tables.TableRenderers;
import Common.UI.VisualCache.ConfigurationCache;
import Common.UI.VisualCache.VisualCaches;
2023-09-17 22:13:42 +03:00
import Common.UI.Windows.Dialog.DBObjectDialog;
import Common.Utils.Utils;
2024-09-24 20:22:41 +03:00
import Common.Utils.Vector_;
import TestingSystem.SAPFOR.SapforConfiguration.UI.SapforConfigurationFields;
2023-09-17 22:13:42 +03:00
import java.util.LinkedHashMap;
2024-09-24 20:22:41 +03:00
import java.util.Vector;
2023-11-17 21:26:01 +03:00
public class SapforConfigurationDBTable extends iDBTable<SapforConfiguration> {
2023-09-17 22:13:42 +03:00
public SapforConfigurationDBTable() {
2023-11-17 21:26:01 +03:00
super(SapforConfiguration.class);
2023-09-17 22:13:42 +03:00
}
@Override
public Current CurrentName() {
return Current.SapforConfiguration;
}
@Override
public String getSingleDescription() {
return "конфигурация тестирования SAPFOR";
}
@Override
public String getPluralDescription() {
return "конфигурации";
}
@Override
protected DataSetControlForm createUI() {
2024-09-24 20:22:41 +03:00
return new DataSetControlForm(this) {
2023-09-17 22:13:42 +03:00
@Override
public boolean hasCheckBox() {
return true;
}
@Override
2023-11-14 23:07:49 +03:00
protected void AdditionalInitColumns() {
columns.get(4).setRenderer(TableRenderers.RendererAutoConfiguration);
columns.get(4).setEditor(TableEditors.EditorAutoConfiguration);
columns.get(4).setMinWidth(25);
columns.get(4).setMaxWidth(25);
columns.get(6).setMaxWidth(500);
columns.get(7).setRenderer(TableRenderers.RendererMultiline);
columns.get(7).setMaxWidth(500);
2023-09-17 22:13:42 +03:00
}
};
}
@Override
public String[] getUIColumnNames() {
return new String[]{
"имя",
"автор",
2024-09-20 00:22:42 +03:00
"",
"ядра",
"параметры",
2024-09-18 15:25:58 +03:00
"группы",
"тестов"
2023-09-17 22:13:42 +03:00
};
}
@Override
public Object getFieldAt(SapforConfiguration object, int columnIndex) {
2024-09-18 15:25:58 +03:00
ConfigurationCache cache = (ConfigurationCache) VisualCaches.GetCache(object);
2023-09-17 22:13:42 +03:00
switch (columnIndex) {
case 2:
return object.description;
case 3:
return object.sender_name;
case 4:
return object.printAuto();
case 5:
return object.kernels;
2024-09-18 15:25:58 +03:00
case 6:
return cache.getSettingsDescriptions();
2024-09-18 15:25:58 +03:00
case 7:
return cache.groupsSummary;
case 8:
return cache.getTestsCount();
2023-09-17 22:13:42 +03:00
default:
return null;
}
}
//--
@Override
public DBObjectDialog<SapforConfiguration, SapforConfigurationFields> getDialog() {
return new DBObjectDialog<SapforConfiguration, SapforConfigurationFields>(SapforConfigurationFields.class) {
@Override
public int getDefaultHeight() {
return 200;
2023-09-17 22:13:42 +03:00
}
@Override
public int getDefaultWidth() {
return 450;
2023-09-17 22:13:42 +03:00
}
@Override
public void validateFields() {
}
@Override
public void fillFields() {
fields.tfName.setText(Result.description);
fields.sKernels.setValue(Result.kernels);
2023-09-17 22:13:42 +03:00
}
@Override
public void ProcessResult() {
Result.description = fields.tfName.getText();
2024-09-24 20:22:41 +03:00
Result.kernels = (int) fields.sKernels.getValue();
2023-09-17 22:13:42 +03:00
}
@Override
public void SetReadonly() {
fields.tfName.setEnabled(false);
fields.sTransformationMaxtime.setEnabled(false);
}
};
}
2024-09-24 20:22:41 +03:00
public Vector<SapforConfiguration> getAutoConfigurations() {
Vector<SapforConfiguration> res = new Vector_<>();
for (SapforConfiguration configuration : Data.values()) {
if (configuration.autoTesting != 0)
res.add(configuration);
}
return res;
}
//патч.потом удалить.
public SapforConfiguration getConfigurationByDescription(String description){
for (SapforConfiguration sapforConfiguration: Data.values())
if (sapforConfiguration.description.equals(description))
return sapforConfiguration;
return null;
}
2023-09-17 22:13:42 +03:00
}