package _VisualDVM.ComponentsServer.BugReport; import Common.Database.Objects.DBObject; import Common.Database.Tables.DBTable; import Common.Database.Tables.FKBehaviour; import Common.Database.Tables.FKCurrentObjectBehaviuor; import Common.Database.Tables.FKDataBehaviour; import Common.Visual.DataSetControlForm; import _VisualDVM.ComponentsServer.BugReport.UI.BugReportsForm; import _VisualDVM.ComponentsServer.BugReportRecipient.BugReportRecipient; import _VisualDVM.ComponentsServer.BugReportSetting.BugReportSetting; import javax.swing.*; import java.util.LinkedHashMap; import java.util.Vector; import java.util.stream.Collectors; public class BugReportsDBTable extends DBTable { public BugReportsDBTable() { super(String.class, BugReport.class); } @Override public String getSingleDescription() { return "отчёт об ошибке"; } @Override public String getPluralDescription() { return "отчёты об ошибках"; } @Override protected DataSetControlForm createUI(JPanel mountPanel) { return new BugReportsForm(this, mountPanel); } public Vector getAllDrafts() throws Exception { return Data.values().stream().filter(bugReport -> bugReport.state.equals(BugReportState.draft)).collect(Collectors.toCollection(Vector::new)); } @Override public LinkedHashMap, FKBehaviour> getFKDependencies() { LinkedHashMap, FKBehaviour> res = new LinkedHashMap<>(); res.put(BugReportSetting.class, new FKBehaviour(FKDataBehaviour.DELETE, FKCurrentObjectBehaviuor.PASSIVE)); res.put(BugReportRecipient.class, new FKBehaviour(FKDataBehaviour.DELETE, FKCurrentObjectBehaviuor.PASSIVE)); return res; } //- }