рефакторинг запроса версий компонент. сделал одной командой
This commit is contained in:
@@ -20,10 +20,6 @@ public class AppendBugReportField extends ClientPass<ComponentsServer, BugReport
|
||||
return "/icons/Append.png";
|
||||
}
|
||||
@Override
|
||||
protected boolean needsAnimation() {
|
||||
return true;
|
||||
}
|
||||
@Override
|
||||
public String getButtonText() {
|
||||
return "";
|
||||
}
|
||||
@@ -55,8 +51,7 @@ public class AppendBugReportField extends ClientPass<ComponentsServer, BugReport
|
||||
}
|
||||
@Override
|
||||
protected void body() throws Exception {
|
||||
BugReport actual =
|
||||
(BugReport) getServer().ClientRequest(ServerCode.AppendBugReportTextField, "", new BugReportAdditionJson(target, fieldName, addition));
|
||||
BugReport actual = (BugReport) getServer().ClientRequest(ServerCode.AppendBugReportTextField, "", new BugReportAdditionJson(target, fieldName, addition));
|
||||
target.SynchronizeFields(actual);
|
||||
Global.componentsServer.db.Update(target);
|
||||
}
|
||||
|
||||
@@ -1,37 +1,31 @@
|
||||
package _VisualDVM.Passes.All;
|
||||
import _VisualDVM.Global;
|
||||
import _VisualDVM.Passes.Server.ComponentsRepositoryPass;
|
||||
import _VisualDVM.Passes.Server.ClientPass;
|
||||
import _VisualDVM.Repository.Component.Component;
|
||||
import _VisualDVM.Repository.Component.ComponentType;
|
||||
import _VisualDVM.Repository.Component.Json.ComponentVersionsInfoJson;
|
||||
import _VisualDVM.Repository.Server.ComponentsServer;
|
||||
import _VisualDVM.Repository.Server.ServerCode;
|
||||
import _VisualDVM.Repository.Server.ServerExchangeUnit_2021;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Vector;
|
||||
public class GetComponentsActualVersions extends ComponentsRepositoryPass {
|
||||
public class GetComponentsActualVersions extends ClientPass<ComponentsServer,Object> {
|
||||
@Override
|
||||
public String getIconPath() {
|
||||
return "/icons/Components.png";
|
||||
}
|
||||
@Override
|
||||
public String getButtonText() {
|
||||
return "";
|
||||
protected ComponentsServer getServer() {
|
||||
return Global.componentsServer;
|
||||
}
|
||||
@Override
|
||||
protected void ServerAction() throws Exception {
|
||||
Vector<String> versions = new Vector<>();
|
||||
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>) 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>) server_response.object;
|
||||
for (ComponentType componentType : response_minimal_versions.keySet()) {
|
||||
Global.components.get(componentType).unpackMinimalVersion(response_minimal_versions.get(componentType));
|
||||
protected void body() throws Exception {
|
||||
Vector<String> types = new Vector<>();
|
||||
for (ComponentType key: Global.components.Data.keySet())
|
||||
types.add(key.toString());
|
||||
Vector<ComponentVersionsInfoJson> versions = (Vector<ComponentVersionsInfoJson>) getServer().ClientRequest(ServerCode.GetComponentsVersionsInfo, "", types);
|
||||
for (ComponentVersionsInfoJson info: versions){
|
||||
Global.components.get(info.componentType).unpackActualVersion(info.actual_version);
|
||||
Global.components.get(info.componentType).unpackMinimalVersion(info.minimal_version);
|
||||
}
|
||||
for (Component component : Global.components.Data.values()) {
|
||||
if (component.CanBeUpdated())
|
||||
|
||||
@@ -2,5 +2,13 @@ package _VisualDVM.Passes.Server;
|
||||
import Common.Passes.Pass;
|
||||
import _VisualDVM.Repository.RepositoryServer;
|
||||
public abstract class ClientPass <S extends RepositoryServer,T> extends Pass<T> {
|
||||
@Override
|
||||
protected boolean needsAnimation() {
|
||||
return true;
|
||||
}
|
||||
@Override
|
||||
public String getButtonText() {
|
||||
return "";
|
||||
}
|
||||
protected abstract S getServer();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
package _VisualDVM.Repository.Component.Json;
|
||||
import Common.CommonConstants;
|
||||
import _VisualDVM.Repository.Component.ComponentType;
|
||||
import com.google.gson.annotations.Expose;
|
||||
|
||||
import java.io.Serializable;
|
||||
public class ComponentVersionsInfoJson implements Serializable {
|
||||
@Expose
|
||||
public ComponentType componentType = ComponentType.Undefined;
|
||||
@Expose
|
||||
public String minimal_version = "";
|
||||
@Expose
|
||||
public String actual_version = "";
|
||||
public ComponentVersionsInfoJson(ComponentType componentType_in){
|
||||
componentType=componentType_in;
|
||||
}
|
||||
}
|
||||
@@ -375,7 +375,7 @@ public abstract class RepositoryServer<D extends Database> {
|
||||
RepositoryPass pass = new RepositoryPass(this) {
|
||||
@Override
|
||||
public String getDescription() {
|
||||
return code_in.toString();
|
||||
return code_in.getDescription();
|
||||
}
|
||||
@Override
|
||||
protected int getTimeout() {
|
||||
@@ -396,7 +396,7 @@ public abstract class RepositoryServer<D extends Database> {
|
||||
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);
|
||||
return ClientRequest(code_in,arg_in,object_in, Global.properties.SocketTimeout);
|
||||
}
|
||||
//---
|
||||
public <T extends DBObject> T getActual(T object_in, Class<T> object_class)throws Exception{
|
||||
|
||||
@@ -17,6 +17,7 @@ import _VisualDVM.Repository.BugReport.BugReport;
|
||||
import _VisualDVM.Repository.BugReport.Json.BugReportAdditionJson;
|
||||
import _VisualDVM.Repository.BugReportsDatabase;
|
||||
import _VisualDVM.Repository.Component.ComponentType;
|
||||
import _VisualDVM.Repository.Component.Json.ComponentVersionsInfoJson;
|
||||
import _VisualDVM.Repository.EmailMessage;
|
||||
import _VisualDVM.Repository.RepositoryServer;
|
||||
import _VisualDVM.Repository.Subscribes.Subscriber;
|
||||
@@ -194,11 +195,11 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
|
||||
} else
|
||||
throw new RepositoryRefuseException("Баг репорт с ключом " + oldBugReport_.id + " не существует.");
|
||||
break;
|
||||
//--
|
||||
//--
|
||||
case AppendBugReportTextField:
|
||||
AppendBugReportField();
|
||||
break;
|
||||
//--
|
||||
//--
|
||||
case ReceiveBugReportsDatabase:
|
||||
Print("Получить базу данных баг репортов");
|
||||
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||
@@ -339,6 +340,9 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
|
||||
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||
response.object = response_minimal_versions_;
|
||||
break;
|
||||
case GetComponentsVersionsInfo:
|
||||
GetComponentsVersionsInfo();
|
||||
break;
|
||||
case GetComponentChangesLog:
|
||||
Print("Получить журнал изменений компонента " + request.arg);
|
||||
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||
@@ -413,21 +417,36 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
|
||||
break;
|
||||
}
|
||||
}
|
||||
private void AppendBugReportField() throws Exception{
|
||||
//---------------
|
||||
private void GetComponentsVersionsInfo() throws Exception {
|
||||
Print("Получить информацию о версиях компонент");
|
||||
Vector<String> types = (Vector<String>) request.object;
|
||||
Vector<ComponentVersionsInfoJson> res = new Vector<>();
|
||||
for (String sType : types) {
|
||||
ComponentType componentType = ComponentType.valueOf(sType);
|
||||
File actualVersionFile = Paths.get(Utils_.getHomePath(), "Components", sType, "version.txt").toFile();
|
||||
File minimalVersionFile = Paths.get(Utils_.getHomePath(), "Components", sType, "minimal_version.txt").toFile();
|
||||
ComponentVersionsInfoJson info = new ComponentVersionsInfoJson(componentType);
|
||||
info.actual_version = Utils_.removeCharacters(Utils.ReadAllText(actualVersionFile), "\n", "\r");
|
||||
info.minimal_version = Utils_.removeCharacters(Utils.ReadAllText(minimalVersionFile), "\n", "\r");
|
||||
res.add(info);
|
||||
}
|
||||
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||
response.object = res;
|
||||
}
|
||||
private void AppendBugReportField() throws Exception {
|
||||
BugReportAdditionJson transport = (BugReportAdditionJson) request.object;
|
||||
Print("Дополнить поле " + request.arg + " баг репорта " + transport.id);
|
||||
if (db.bugReports.containsKey(transport.id)){
|
||||
if (db.bugReports.containsKey(transport.id)) {
|
||||
BugReport actual = db.bugReports.get(transport.id);
|
||||
Field field = BugReport.class.getField(transport.fieldName);
|
||||
field.set(actual,field.get(actual)+"\n"+ transport.textAddition);
|
||||
field.set(actual, field.get(actual) + "\n" + transport.textAddition);
|
||||
actual.change_date = new Date().getTime();
|
||||
db.Update(actual);
|
||||
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||
response.object = actual;
|
||||
}
|
||||
else
|
||||
} else
|
||||
throw new RepositoryRefuseException("Баг репорт с ключом " + transport.id + " не существует.");
|
||||
|
||||
}
|
||||
@Override
|
||||
protected void startAdditionalThreads() {
|
||||
|
||||
@@ -10,7 +10,7 @@ public enum ServerCode {
|
||||
//-
|
||||
GetComponentsBackups,
|
||||
//-
|
||||
UpdateBugReportField,
|
||||
UpdateBugReportField,//todo выкинуть после обновления.
|
||||
UpdateBugReport,
|
||||
AppendBugReportTextField,
|
||||
//-
|
||||
@@ -46,8 +46,9 @@ public enum ServerCode {
|
||||
ReceiveComponent,
|
||||
ReceiveBugReport,
|
||||
SendBugReport,
|
||||
GetComponentsVersions,
|
||||
GetComponentsMinimalVersions,
|
||||
GetComponentsVersions, //todo удалить устарел
|
||||
GetComponentsMinimalVersions, //todo удалить устарел
|
||||
GetComponentsVersionsInfo,
|
||||
GetComponentChangesLog,
|
||||
//--
|
||||
CheckURLRegistered,
|
||||
@@ -89,6 +90,14 @@ public enum ServerCode {
|
||||
GetSapforForCompilation,
|
||||
GetMaxSapforVersion,
|
||||
PerformAutoSapforTesting,
|
||||
Email_new
|
||||
;
|
||||
Email_new;
|
||||
|
||||
public String getDescription(){
|
||||
switch (this){
|
||||
case GetComponentsVersionsInfo:
|
||||
return "Получить версии компонент";
|
||||
default:
|
||||
return this.toString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user