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

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 name="ChangeListManager">
<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$/src/Common/Utils/Utils_.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Utils/Utils_.java" 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/GetComponentsActualVersions.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/GetComponentsActualVersions.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/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$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" 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/SendBugReport.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SendBugReport.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/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" />
</list>

View File

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

View File

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

View File

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

View File

@@ -115,6 +115,16 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
return Global.properties.ComponentsServerPort;
}
@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 {
if (object instanceof BugReport) {
BugReport bugReport = (BugReport) object;
@@ -208,13 +218,13 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
break;
case ReceiveBugReport:
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.object = Utils_.fileToBytes(bugArchive);
break;
case SendBugReport:
case SendBugReport: //todo устарело
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);
response = new ServerExchangeUnit_2021(ServerCode.OK);
break;

View File

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