промежуточный. кусок рефакторинга на тему борьбы с зависаниями. пока не внедрен

This commit is contained in:
2025-02-03 15:19:53 +03:00
parent 6911bc6cdb
commit e0f441d82a
26 changed files with 128 additions and 200 deletions

174
.idea/workspace.xml generated
View File

@@ -7,160 +7,32 @@
</component>
<component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Server/ClientPass.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/236/domain.f" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/236/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/592/distrindirect3.f90" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/592/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/m1/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/m2/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/m3/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/m4/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/m5/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/p1/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/p1/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/p2/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/p2/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v1/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v1/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v2/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/m1/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/p1/acrred21.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/p1/visualiser_data/attachments/Sapfor_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/p1/visualiser_data/attachments/Server_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/p1/visualiser_data/attachments/VisualDVM_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/p1/visualiser_data/attachments/Visualizer_2_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/p1/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/p1/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/v3/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1733152707/acrred21/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m1/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m1/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m1/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m2/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m2/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m2/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m3/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m3/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m3/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m4/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m4/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m4/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m5/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m5/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m5/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/m5/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p1/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p1/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p1/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p1/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p10/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p10/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p10/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p10/visualiser_data/attachments/Sapfor_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p10/visualiser_data/attachments/Server_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p10/visualiser_data/attachments/VisualDVM_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p10/visualiser_data/attachments/Visualizer_2_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p10/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p2/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p2/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p2/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p2/visualiser_data/attachments/Sapfor_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p2/visualiser_data/attachments/Server_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p2/visualiser_data/attachments/VisualDVM_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p2/visualiser_data/attachments/Visualizer_2_log.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p2/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p3/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p3/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p3/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p3/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p4/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p4/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p4/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p4/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p5/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p5/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p5/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p5/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p6/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p6/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p6/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p6/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p7/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p7/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p7/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p7/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p8/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p8/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p8/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p8/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p9/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p9/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p9/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/p9/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/v1/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/v1/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/v1/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/v1/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/v2/call.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/v2/contains31.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/v2/sol.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/v2/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/bugreport_1737466258/test_routine_4/visualiser_data/spf.proj" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/sh11_fr.f" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/summa.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/sh11_fr.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/summa.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/sh11_fr.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/summa.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/p1/sh11_fr.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/p1/summa.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/p2/sh11_fr.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/p2/summa.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/sh11_fr.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/summa.for" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/visualiser_data/create_variants.sh" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/visualiser_data/err.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/visualiser_data/out.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/visualiser_data/parse.sh" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/visualiser_data/parse_err.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/v1/visualiser_data/parse_out.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/visualiser_data/err.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/visualiser_data/out.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/visualiser_data/parse.sh" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/visualiser_data/parse_err.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/visualiser_data/parse_out.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/v1/visualiser_data/transformation.sh" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/visualiser_data/err.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/visualiser_data/out.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/visualiser_data/parse.sh" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/visualiser_data/parse_err.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/visualiser_data/parse_out.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/visualiser_data/properties" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/v1/visualiser_data/transformation.sh" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/visualiser_data/err.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/visualiser_data/out.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/visualiser_data/parse.sh" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/visualiser_data/parse_err.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/visualiser_data/parse_out.txt" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/Downloads/test_routine_1_1737640388/test_routine_1/visualiser_data/transformation.sh" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/GlobalData/Account/Account.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/GlobalData/Account/Account.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/AppendBugReportComment.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/AppendBugReportComment.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/DeleteBugReport.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DeleteBugReport.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/PublishBugReport.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/PublishBugReport.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CheckRegistrationOnServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CheckRegistrationOnServer.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CheckRemoteWorkspace.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/CheckRemoteWorkspace.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DVMConvertProject.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DVMConvertProject.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadAllBugReportsArchives.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadAllBugReportsArchives.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadBugReport.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadBugReport.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadComponent.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadComponent.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadDVMPackages.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadDVMPackages.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadSapforPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadSapforPackage.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadTest.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/DownloadTest.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/GetComponentsBackupsFromServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/GetComponentsBackupsFromServer.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ResurrectComponentFromServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ResurrectComponentFromServer.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ShowComponentChangesLog.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ShowComponentChangesLog.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ShowTestingServerFile.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ShowTestingServerFile.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SynchronizeBugReports.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SynchronizeBugReports.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SynchronizeTests.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SynchronizeTests.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/UpdateBugReportField.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/UpdateBugReportField.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/UpdateBugReportProgress.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/UpdateBugReportProgress.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/Component/Visualiser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Component/Visualiser.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfiguration/UI/DVMConfigurationsForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMConfiguration/UI/DVMConfigurationsForm.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMSettings/UI/DVMSettingsForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMSettings/UI/DVMSettingsForm.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/Server/PublishServerObject.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Server/PublishServerObject.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/Server/RepositoryPass.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Server/RepositoryPass.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/ActualizeTestingPackages.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/Testing/ActualizeTestingPackages.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryClient.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryServer.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

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

View File

@@ -1,16 +1,23 @@
package _VisualDVM.Passes.All;
import Common.Database.Objects.DBObject;
import Common.Passes.Pass;
import Common.Properties;
import Common.Utils.Utils_;
import _VisualDVM.Global;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.Passes.Server.ComponentsRepositoryPass;
import _VisualDVM.Passes.Server.ClientPass;
import _VisualDVM.Repository.BugReport.BugReport;
import _VisualDVM.Repository.EmailMessage;
import _VisualDVM.Repository.RepositoryServer;
import _VisualDVM.Repository.Server.ComponentsServer;
import _VisualDVM.Repository.Server.ServerCode;
import _VisualDVM.Repository.Server.ServerExchangeUnit_2021;
import com.google.gson.JsonObject;
import javafx.util.Pair;
import java.io.File;
import java.util.Date;
public class AppendBugReportField extends ComponentsRepositoryPass<BugReport> {
public class AppendBugReportField extends ClientPass<ComponentsServer,BugReport> {
String fieldName;
String oldValue;
String addition;
@@ -20,6 +27,10 @@ public class AppendBugReportField extends ComponentsRepositoryPass<BugReport> {
return "/icons/Append.png";
}
@Override
protected boolean needsAnimation() {
return true;
}
@Override
public String getButtonText() {
return "";
}
@@ -27,9 +38,13 @@ public class AppendBugReportField extends ComponentsRepositoryPass<BugReport> {
return target.canModify(Global.mainModule.getAccount(),Log);
}
@Override
protected ComponentsServer getServer() {
return Global.componentsServer;
}
@Override
protected boolean canStart(Object... args) throws Exception {
if (server.db.bugReports.getUI().CheckCurrent(Log)) {
target = server.db.bugReports.getUI().getCurrent();
if (getServer().db.getTable(BugReport.class).getUI().CheckCurrent(Log)) {
target = getServer().db.getTable(BugReport.class).getUI().getCurrent();
if (!target.CheckNotDraft(Log))
return false;
fieldName = (String) args[0];
@@ -43,9 +58,10 @@ public class AppendBugReportField extends ComponentsRepositoryPass<BugReport> {
return false;
}
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.GetObjectCopyByPK, "", new Pair<>(BugReport.class, target.id)));
target.SynchronizeFields((BugReport) response.object);
protected void body() throws Exception {
//todo возможно оформить это единственной командой на сервере.
BugReport actual= getServer().getActual(target, BugReport.class);
target.SynchronizeFields(actual);
oldValue = (String) BugReport.class.getField(fieldName).get(target);
newValue = oldValue + "\n" + Utils_.Brackets(Utils_.print_date(
new Date())) + " " + Global.mainModule.getAccount().name
@@ -54,13 +70,13 @@ public class AppendBugReportField extends ComponentsRepositoryPass<BugReport> {
BugReport.class.getField(fieldName).set(target, newValue);
//обновляем дату.
target.change_date = new Date().getTime();
server.db.Update(target);
Global.componentsServer.db.Update(target);
//3. отправляем на сервер
Command(new ServerExchangeUnit_2021(ServerCode.UpdateBugReportField, fieldName, target));
getServer().ClientRequest(ServerCode.UpdateBugReportField, fieldName, target);
}
@Override
protected void showFinish() throws Exception {
server.db.bugReports.getUI().RedrawControl();
Global.componentsServer.db.bugReports.getUI().RedrawControl();
Global.mainModule.getUI().getMainWindow().getCallbackWindow().ShowCurrentBugReport();
}
@Override
@@ -86,7 +102,7 @@ public class AppendBugReportField extends ComponentsRepositoryPass<BugReport> {
);
Global.mainModule.getPass(PassCode.Email).Do(
message,
server.db.subscribers.checkRecipients(target.getRecipients())
Global.componentsServer.db.subscribers.checkRecipients(target.getRecipients())
);
}
}

View File

@@ -8,7 +8,7 @@ public class CheckRegistrationOnServer extends ComponentsRepositoryPass<Subscrib
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.CheckSubscriberRole, "", Global.mainModule.getAccount()));
target = (Subscriber) response.object;
target = (Subscriber) server_response.object;
Global.mainModule.getAccount().role = target.role;
}
}

View File

@@ -20,6 +20,6 @@ public class CheckRemoteWorkspace extends ComponentsRepositoryPass<SubscriberWor
String login = MainModule_.instance.getDb().getTable(User.class).getUI().getCurrent().login;
Command(new ServerExchangeUnit_2021(ServerCode.CheckURLRegistered,
email + "\n" + machineURL + "\n" + login));
target = (SubscriberWorkspace) response.object;
target = (SubscriberWorkspace) server_response.object;
}
}

View File

@@ -100,9 +100,9 @@ public class DVMConvertProject extends ComponentsRepositoryPass<db_project_info>
unit_args.addAll(programsNames);
unit.arg = String.join("\n", unit_args);
Command(unit);
output = response.arg;
output = server_response.arg;
versionArchive = new File(workspace, target.name + "_result.zip");
response.Unpack(versionArchive);
server_response.Unpack(versionArchive);
File result = new File(workspace, "result");
if (Global.mainModule.getPass(PassCode.UnzipFolderPass).Do(versionArchive.getAbsolutePath(), result.getAbsolutePath())) {
if (target.last_modification == null) {

View File

@@ -32,7 +32,7 @@ public class DownloadAllBugReportsArchives extends ComponentsRepositoryPass<File
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.ReceiveAllArchives));
response.Unpack(target = Utils.getTempFileName("bugs"));
server_response.Unpack(target = Utils.getTempFileName("bugs"));
}
@Override
protected boolean validate() {

View File

@@ -18,7 +18,7 @@ public class DownloadBugReport extends ComponentsRepositoryPass<BugReport> {
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.ReceiveBugReport, target.id));
Utils_.bytesToFile((byte[]) response.object, target.getArchiveFile());
Utils_.bytesToFile((byte[]) server_response.object, target.getArchiveFile());
}
@Override
protected boolean validate() {

View File

@@ -11,6 +11,6 @@ public class DownloadComponent extends ComponentsRepositoryPass<Component> {
target = Global.components.getUI().getCurrent();
String packed = target.getComponentType() + "\n" + target.getFileName();
Command(new ServerExchangeUnit_2021(ServerCode.ReceiveComponent, packed));
Utils_.bytesToFile((byte[]) response.object, target.getNewFile());
Utils_.bytesToFile((byte[]) server_response.object, target.getNewFile());
}
}

View File

@@ -45,7 +45,7 @@ public class DownloadDVMPackages extends Pass<Vector<Integer>> {
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.DownloadDVMPackages, "", target));
packed_packages = (Vector<Pair<Integer, Pair<byte[], byte[]>>>) response.object;
packed_packages = (Vector<Pair<Integer, Pair<byte[], byte[]>>>) server_response.object;
}
};
if (!pass.Do(target)) {

View File

@@ -38,7 +38,7 @@ public class DownloadSapforPackage extends Pass<SapforPackage> {
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.DownloadSapforPackage, "", id));
packed = (byte[]) response.object;
packed = (byte[]) server_response.object;
}
};
return pass.Do();

View File

@@ -37,7 +37,7 @@ public class DownloadTest extends TestingSystemPass<Test> {
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.DownloadTest, String.valueOf(target.id)));
response.Unpack(target.getArchive());
server_response.Unpack(target.getArchive());
}
@Override
protected boolean validate() {

View File

@@ -23,13 +23,13 @@ public class GetComponentsActualVersions extends ComponentsRepositoryPass {
for (Component component : Global.components.Data.values())
versions.add(component.getComponentType().toString());
Command(new ServerExchangeUnit_2021(ServerCode.GetComponentsVersions, String.join("\n", versions)));
LinkedHashMap<ComponentType, String> response_actual_versions = (LinkedHashMap<ComponentType, String>) response.object;
LinkedHashMap<ComponentType, String> response_actual_versions = (LinkedHashMap<ComponentType, String>) server_response.object;
for (ComponentType componentType : response_actual_versions.keySet()) {
Global.components.get(componentType).unpackActualVersion(response_actual_versions.get(componentType));
}
//-- получить актуальные версии с сервера.
Command(new ServerExchangeUnit_2021(ServerCode.GetComponentsMinimalVersions, String.join("\n", versions)));
LinkedHashMap<ComponentType, String> response_minimal_versions = (LinkedHashMap<ComponentType, String>) response.object;
LinkedHashMap<ComponentType, String> response_minimal_versions = (LinkedHashMap<ComponentType, String>) server_response.object;
for (ComponentType componentType : response_minimal_versions.keySet()) {
Global.components.get(componentType).unpackMinimalVersion(response_minimal_versions.get(componentType));
}

View File

@@ -16,7 +16,7 @@ public class GetComponentsBackupsFromServer extends ComponentsRepositoryPass<Vec
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.GetComponentsBackups,
Global.components.getUI().getCurrent().getComponentType().toString()));
target = (Vector<File>) response.object;
target = (Vector<File>) server_response.object;
}
@Override
protected boolean validate() {

View File

@@ -99,7 +99,7 @@ public class ResurrectComponentFromServer extends CurrentComponentPass {
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.ReceiveFile, remoteFile.full_name));
localFile = Utils.getTempFileName(remoteFile.name);
response.Unpack(localFile);
server_response.Unpack(localFile);
}
};
if (!receivePass.Do())

View File

@@ -37,7 +37,7 @@ public class ShowComponentChangesLog extends ComponentsRepositoryPass<Component>
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.GetComponentChangesLog, target.getComponentType().toString()));
Utils_.bytesToFile((byte[]) response.object, res);
Utils_.bytesToFile((byte[]) server_response.object, res);
}
@Override
protected boolean validate() {

View File

@@ -24,8 +24,8 @@ public class ShowTestingServerFile extends TestingSystemPass<RemoteFile> {
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.ReceiveFile, target.full_name));
localFile = Utils.getTempFileName(target.name);
if (response.object != null)
response.Unpack(localFile);
if (server_response.object != null)
server_response.Unpack(localFile);
else throw new PassException("Файл не найден");
}
@Override

View File

@@ -33,7 +33,7 @@ public class SynchronizeBugReports extends ComponentsRepositoryPass<Object> {
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.ReceiveBugReportsDatabase));
response.Unpack(new_db_file = Utils.getTempFileName("bdb"));
server_response.Unpack(new_db_file = Utils.getTempFileName("bdb"));
}
@Override
protected void performDone() throws Exception {

View File

@@ -51,7 +51,7 @@ public class SynchronizeTests extends TestingSystemPass<Object> {
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.ReceiveTestsDatabase));
response.Unpack(new_db_file = Utils.getTempFileName("tdb"));
server_response.Unpack(new_db_file = Utils.getTempFileName("tdb"));
}
@Override
protected void performDone() throws Exception {

View File

@@ -62,7 +62,7 @@ public class UpdateBugReportField extends ComponentsRepositoryPass<BugReport> {
//последнюю версию этого баг репорта.
//все это должно быть в рамках одной транзакции с сервером!
Command(new ServerExchangeUnit_2021(ServerCode.GetObjectCopyByPK, "", new Pair<>(BugReport.class, target.id)));
target.SynchronizeFields((BugReport) response.object);
target.SynchronizeFields((BugReport) server_response.object);
for (int i = 0; i < fieldNames.size(); ++i) {
String fieldName = fieldNames.get(i);
switch (fieldName) {

View File

@@ -0,0 +1,6 @@
package _VisualDVM.Passes.Server;
import Common.Passes.Pass;
import _VisualDVM.Repository.RepositoryServer;
public abstract class ClientPass <S extends RepositoryServer,T> extends Pass<T> {
protected abstract S getServer();
}

View File

@@ -39,7 +39,7 @@ public class PublishServerObject<S extends RepositoryServer, D extends DBObject>
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.PublishObject, getEmail(), target));
pk = response.object;
pk = server_response.object;
}
@Override
protected void showDone() throws Exception {

View File

@@ -21,8 +21,8 @@ public abstract class RepositoryPass<S extends RepositoryServer, T> extends Pass
protected ObjectInputStream in = null; // поток чтения из сокета
protected ObjectOutputStream out = null; // поток записи в сокет
//-
protected ServerExchangeUnit_2021 request;
protected ServerExchangeUnit_2021 response;
protected ServerExchangeUnit_2021 client_request;
protected ServerExchangeUnit_2021 server_response;
//-
protected Socket clientSocket = null; //сокет для общения
protected ServerCode ExitCode = ServerCode.Undefined;
@@ -60,12 +60,12 @@ public abstract class RepositoryPass<S extends RepositoryServer, T> extends Pass
protected abstract void ServerAction() throws Exception;
protected void Command(ServerExchangeUnit_2021 request_in) throws Exception {
ExitCode = ServerCode.Undefined;
request = request_in;
out.writeObject(request);
response = (ServerExchangeUnit_2021) in.readObject();
switch (ExitCode = response.getCode()) {
client_request = request_in;
out.writeObject(client_request);
server_response = (ServerExchangeUnit_2021) in.readObject();
switch (ExitCode = server_response.getCode()) {
case FAIL:
throw (Exception) response.object;
throw (Exception) server_response.object;
case OLD:
throw new PassException("Сервер устарел.");
default:
@@ -77,12 +77,12 @@ public abstract class RepositoryPass<S extends RepositoryServer, T> extends Pass
}
protected void ReceiveFile(String src, File dst) throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.ReceiveFile, src));
if (response.object != null)
response.Unpack(dst);
if (server_response.object != null)
server_response.Unpack(dst);
}
protected String ReadFile(String src) throws Exception {
Command(new ServerExchangeUnit_2021(ServerCode.ReadFile, src));
return response.object.toString();
return server_response.object.toString();
}
@Override
protected void body() throws Exception {

View File

@@ -37,7 +37,7 @@ public abstract class ActualizeTestingPackages<P extends TestingPackage> extends
}
@Override
protected void performDone() throws Exception {
Vector<P> res = (Vector<P>) response.object;
Vector<P> res = (Vector<P>) server_response.object;
Global.testingServer.db.BeginTransaction();
for (P actual : res)
Global.testingServer.db.UpdateWithCheck(actual);

View File

@@ -39,7 +39,7 @@ public abstract class RepositoryClient {
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(code_in, arg, object_in));
target = response.object;
target = server_response.object;
}
@Override
protected boolean validate() {

View File

@@ -1,10 +1,13 @@
package _VisualDVM.Repository;
import Common.Database.Database;
import Common.Database.Objects.DBObject;
import Common.Passes.PassException;
import Common.Utils.InterruptThread;
import Common.Utils.Utils_;
import _VisualDVM.Constants;
import _VisualDVM.Global;
import _VisualDVM.Passes.Server.RepositoryPass;
import _VisualDVM.Repository.BugReport.BugReport;
import _VisualDVM.Repository.Server.DiagnosticSignalHandler;
import _VisualDVM.Repository.Server.ServerCode;
import _VisualDVM.Repository.Server.ServerExchangeUnit_2021;
@@ -23,10 +26,7 @@ import javax.mail.internet.MimeMultipart;
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;
import java.util.LinkedHashMap;
import java.util.Properties;
import java.util.Vector;
import java.util.*;
public abstract class RepositoryServer<D extends Database> {
public final static String separator = "----------------------------------";
protected static FileWriter Log;
@@ -187,6 +187,7 @@ public abstract class RepositoryServer<D extends Database> {
out = new ObjectOutputStream(clientSocket.getOutputStream());
in = new ObjectInputStream(clientSocket.getInputStream());
//->
//todo убрать цикл. пусть читает лишь одну команду.было зависание как раз на чтении второй
while (true) {
DBObject dbObject = null;
Pair<Class, Object> p = null;
@@ -369,4 +370,37 @@ public abstract class RepositoryServer<D extends Database> {
public void Ping() {
response = new ServerExchangeUnit_2021(ServerCode.OK);
}
//---команды со стороны клиента.
public Object ClientRequest(ServerCode code_in, String arg_in, Serializable object_in, int delay) throws Exception {
RepositoryPass pass = new RepositoryPass(this) {
@Override
public String getDescription() {
return code_in.toString();
}
@Override
protected int getTimeout() {
return delay;
}
@Override
protected void ServerAction() throws Exception {
Command(new ServerExchangeUnit_2021(code_in, arg_in,object_in));
target = server_response.object;
}
@Override
protected boolean validate() {
return Log.isEmpty();
}
};
if (pass.Do())
return pass.target;
throw new PassException(Utils_.Brackets(new Date().toString()) + " Ошибка взаимодействия с сервером " + code_in);
}
public Object ClientRequest(ServerCode code_in,String arg_in, Serializable object_in)throws Exception {
return ClientRequest(code_in,arg_in,object_in, 120000);
}
//---
public <T extends DBObject> T getActual(T object_in, Class<T> object_class)throws Exception{
return (T) ClientRequest(ServerCode.GetObjectCopyByPK, "",
new Pair<>(object_class, object_in.getPK()));
}
}