рефакторинг публикации компонентов

This commit is contained in:
2025-02-03 23:04:40 +03:00
parent 458e250b5c
commit 26434b21ab
11 changed files with 192 additions and 85 deletions

View File

@@ -8,7 +8,8 @@ import _VisualDVM.Repository.Server.ComponentsServer;
import _VisualDVM.Repository.Server.ServerCode;
import java.util.Vector;
public class GetComponentsActualVersions extends ClientPass<ComponentsServer,Object> {
public class GetComponentsActualVersions extends ClientPass<ComponentsServer, Object> {
Vector<ComponentVersionsInfoJson> versions;
@Override
public String getIconPath() {
return "/icons/Components.png";
@@ -18,12 +19,20 @@ public class GetComponentsActualVersions extends ClientPass<ComponentsServer,Obj
return Global.componentsServer;
}
@Override
protected void body() throws Exception {
protected boolean canStart(Object... args) throws Exception {
versions = null;
Vector<String> types = new Vector<>();
for (ComponentType key: Global.components.Data.keySet())
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){
if (SendRequest(ServerCode.GetComponentsVersionsInfo, "", types)) {
versions = (Vector<ComponentVersionsInfoJson>) request.target;
return true;
}
return false;
}
@Override
protected void body() throws Exception {
for (ComponentVersionsInfoJson info : versions) {
Global.components.get(info.componentType).unpackActualVersion(info.actual_version);
Global.components.get(info.componentType).unpackMinimalVersion(info.minimal_version);
}