рефакторинг отправления бага. была избыточная команда

This commit is contained in:
2025-02-03 23:50:09 +03:00
parent 26434b21ab
commit 505d151ee5
7 changed files with 47 additions and 35 deletions

12
.idea/workspace.xml generated
View File

@@ -7,15 +7,11 @@
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment=""> <list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Component/Json/ComponentPublicationInfoJson.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/Utils/Utils_.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Utils/Utils_.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/AppendBugReportField.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/AppendBugReportField.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ReplaceTestsFromFiles.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ReplaceTestsFromFiles.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/GetComponentsActualVersions.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/GetComponentsActualVersions.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SendBugReport.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SendBugReport.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/PublishComponent.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/PublishComponent.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/BugReport/BugReport.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/BugReport/BugReport.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/Server/ClientPass.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Server/ClientPass.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Component/Component.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Component/Component.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryServer.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ComponentsServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ComponentsServer.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ComponentsServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ComponentsServer.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" afterDir="false" />
</list> </list>

View File

@@ -1,6 +1,6 @@
{ {
"Workspace": "E:\\Tests", "Workspace": "E:\\Tests",
"ProjectsSearchDirectory": "E:\\Tests\\Downloads\\bugreport_1738149908\\BT\\v1\\v1", "ProjectsSearchDirectory": "E:\\BUG",
"VisualiserPath": "C:\\Users\\misha\\Downloads", "VisualiserPath": "C:\\Users\\misha\\Downloads",
"Sapfor_FPath": "E:\\_sapfor_x64\\Components\\Sapfor_F", "Sapfor_FPath": "E:\\_sapfor_x64\\Components\\Sapfor_F",
"Visualizer_2Path": "C:\\Users\\misha\\Documents", "Visualizer_2Path": "C:\\Users\\misha\\Documents",

View File

@@ -6,17 +6,19 @@ import Common.Visual.Windows.Dialog.VFileChooser;
import _VisualDVM.Constants; import _VisualDVM.Constants;
import _VisualDVM.Global; import _VisualDVM.Global;
import _VisualDVM.Passes.PassCode; import _VisualDVM.Passes.PassCode;
import _VisualDVM.Passes.Server.ClientPass;
import _VisualDVM.Passes.Server.TestingSystemPass; import _VisualDVM.Passes.Server.TestingSystemPass;
import _VisualDVM.Repository.Server.ServerCode; import _VisualDVM.Repository.Server.ServerCode;
import _VisualDVM.Repository.Server.ServerExchangeUnit_2021; import _VisualDVM.Repository.Server.ServerExchangeUnit_2021;
import _VisualDVM.TestingSystem.Common.Group.Group; import _VisualDVM.TestingSystem.Common.Group.Group;
import _VisualDVM.TestingSystem.Common.Test.Test; import _VisualDVM.TestingSystem.Common.Test.Test;
import _VisualDVM.TestingSystem.Common.TestingServer;
import _VisualDVM.Utils; import _VisualDVM.Utils;
import java.io.File; import java.io.File;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.Vector; import java.util.Vector;
public class ReplaceTestsFromFiles extends TestingSystemPass<Vector<Test>> { public class ReplaceTestsFromFiles extends ClientPass<TestingServer,Vector<Test>> {
VFileChooser fileChooser = new VFileChooser("Выберите файлы для замены тестов"); VFileChooser fileChooser = new VFileChooser("Выберите файлы для замены тестов");
//-- //--
Group group; Group group;
@@ -28,6 +30,10 @@ public class ReplaceTestsFromFiles extends TestingSystemPass<Vector<Test>> {
public String getIconPath() { public String getIconPath() {
return "/icons/Menu/Undo.png"; return "/icons/Menu/Undo.png";
} }
@Override
protected TestingServer getServer() {
return Global.testingServer;
}
//- //-
@Override @Override
protected boolean canStart(Object... args) throws Exception { protected boolean canStart(Object... args) throws Exception {
@@ -72,7 +78,7 @@ public class ReplaceTestsFromFiles extends TestingSystemPass<Vector<Test>> {
//-- //--
for (String name : filesByNames.keySet()) { for (String name : filesByNames.keySet()) {
boolean exists = false; boolean exists = false;
for (Test test : server.db.tests.Data.values()) { for (Test test : getServer().db.tests.Data.values()) {
if ((test.group_id == group.id) && test.description.equals(name)) { if ((test.group_id == group.id) && test.description.equals(name)) {
exists = true; exists = true;
//-- //--
@@ -114,20 +120,16 @@ public class ReplaceTestsFromFiles extends TestingSystemPass<Vector<Test>> {
newTests.add(new_test); newTests.add(new_test);
} }
} }
if (!replaceTests.isEmpty())
SendRequest(ServerCode.ReplaceTestsCodes, null, replaceTests);
if (!newTests.isEmpty())
SendRequest(ServerCode.PublishObjects, null, newTests);
return true; return true;
} }
;
return false; return false;
} }
//- //-
@Override @Override
protected void ServerAction() throws Exception {
if (!replaceTests.isEmpty())
Command(new ServerExchangeUnit_2021(ServerCode.ReplaceTestsCodes, null, replaceTests));
if (!newTests.isEmpty())
Command(new ServerExchangeUnit_2021(ServerCode.PublishObjects, null, newTests));
}
@Override
protected void performFinish() throws Exception { protected void performFinish() throws Exception {
super.performFinish(); super.performFinish();
Global.mainModule.getPass(PassCode.SynchronizeTests).Do(); Global.mainModule.getPass(PassCode.SynchronizeTests).Do();

View File

@@ -1,27 +1,25 @@
package _VisualDVM.Passes.All; package _VisualDVM.Passes.All;
import Common.Utils.Utils_; import Common.Utils.Utils_;
import _VisualDVM.Global; import _VisualDVM.Global;
import _VisualDVM.Passes.Server.ComponentsRepositoryPass; import _VisualDVM.Passes.Server.ClientPass;
import _VisualDVM.Repository.BugReport.BugReport; import _VisualDVM.Repository.BugReport.BugReport;
import _VisualDVM.Repository.BugReport.BugReportState; import _VisualDVM.Repository.BugReport.BugReportState;
import _VisualDVM.Repository.Server.ComponentsServer;
import _VisualDVM.Repository.Server.ServerCode; import _VisualDVM.Repository.Server.ServerCode;
import _VisualDVM.Repository.Server.ServerExchangeUnit_2021; public class SendBugReport extends ClientPass<ComponentsServer,BugReport> {
public class SendBugReport extends ComponentsRepositoryPass<BugReport> {
@Override @Override
protected void ServerAction() throws Exception { protected boolean canStart(Object... args) throws Exception {
target = Global.componentsServer.db.bugReports.getUI().getCurrent(); target = Global.componentsServer.db.bugReports.getUI().getCurrent();
if (!target.project_version.isEmpty()) { if (!target.project_version.isEmpty())
//отправить архив. target.packed_archive = Utils_.fileToBytes(target.getArchiveFile());
Command(new ServerExchangeUnit_2021(ServerCode.SendBugReport, return SendRequest(ServerCode.PublishObject, "", target);
target.id,
Utils_.fileToBytes(target.getArchiveFile())
));
}
// синхрон бд
Command(new ServerExchangeUnit_2021(ServerCode.PublishObject, "", target));
} }
@Override @Override
protected void performFail() throws Exception { protected void performFail() throws Exception {
target.state = BugReportState.draft; target.state = BugReportState.draft;
} }
@Override
protected ComponentsServer getServer() {
return Global.componentsServer;
}
} }

View File

@@ -40,6 +40,8 @@ public class BugReport extends rDBObject {
public String commentAdditionDraft = ""; public String commentAdditionDraft = "";
@Description("IGNORE") @Description("IGNORE")
public File owner = null; public File owner = null;
@Description("IGNORE")
public byte[] packed_archive = null;
public BugReport() { public BugReport() {
} }
public BugReport(BugReport src) { public BugReport(BugReport src) {

View File

@@ -115,6 +115,16 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
return Global.properties.ComponentsServerPort; return Global.properties.ComponentsServerPort;
} }
@Override @Override
protected void beforePublishAction(DBObject object) throws Exception {
if (object instanceof BugReport){
BugReport bugReport = (BugReport) object;
if (bugReport.packed_archive!=null) {
File bugArchive = Utils_.getFile(Utils_.getHomePath(), "Bugs", bugReport.id);
Utils_.bytesToFile(bugReport.packed_archive, bugArchive);
}
}
}
@Override
public void afterDeleteAction(DBObject object) throws Exception { public void afterDeleteAction(DBObject object) throws Exception {
if (object instanceof BugReport) { if (object instanceof BugReport) {
BugReport bugReport = (BugReport) object; BugReport bugReport = (BugReport) object;
@@ -208,13 +218,13 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
break; break;
case ReceiveBugReport: case ReceiveBugReport:
Print("Скачать баг репорт по ключу " + request.arg); Print("Скачать баг репорт по ключу " + request.arg);
File bugArchive = Paths.get(Utils_.getHomePath(), "Bugs", request.arg).toFile(); File bugArchive = Utils_.getFile(Utils_.getHomePath(), "Bugs", request.arg);
response = new ServerExchangeUnit_2021(ServerCode.OK); response = new ServerExchangeUnit_2021(ServerCode.OK);
response.object = Utils_.fileToBytes(bugArchive); response.object = Utils_.fileToBytes(bugArchive);
break; break;
case SendBugReport: case SendBugReport: //todo устарело
Print("Отправить баг репорт " + request.arg); Print("Отправить баг репорт " + request.arg);
File bugArchive1 = Paths.get(Utils_.getHomePath(), "Bugs", request.arg).toFile(); File bugArchive1 = Utils_.getFile(Utils_.getHomePath(), "Bugs", request.arg);
Utils_.bytesToFile((byte[]) request.object, bugArchive1); Utils_.bytesToFile((byte[]) request.object, bugArchive1);
response = new ServerExchangeUnit_2021(ServerCode.OK); response = new ServerExchangeUnit_2021(ServerCode.OK);
break; break;

View File

@@ -101,6 +101,10 @@ public enum ServerCode {
return "Опубликовать компонент"; return "Опубликовать компонент";
case UpdateComponentMinimalVersion: case UpdateComponentMinimalVersion:
return "Поднять минимальную версию компонента"; return "Поднять минимальную версию компонента";
case PublishObject:
return "Публикация объекта";
case SendBugReport:
return "Отправка отчета об ошибке";
default: default:
return this.toString(); return this.toString();
} }