Files
VisualSapfor/src/_VisualDVM/Passes/All/GetComponentsActualVersions.java

44 lines
1.6 KiB
Java
Raw Normal View History

2024-10-14 12:14:01 +03:00
package _VisualDVM.Passes.All;
import _VisualDVM.Global;
2025-02-04 16:36:33 +03:00
import _VisualDVM.Passes.Server.ComponentsServerPass;
2024-10-09 22:21:57 +03:00
import _VisualDVM.Repository.Component.Component;
import _VisualDVM.Repository.Component.ComponentType;
import _VisualDVM.Repository.Component.Json.ComponentVersionsInfoJson;
2024-10-09 22:21:57 +03:00
import _VisualDVM.Repository.Server.ServerCode;
2023-09-17 22:13:42 +03:00
import java.util.Vector;
2025-02-04 16:36:33 +03:00
public class GetComponentsActualVersions extends ComponentsServerPass<Object> {
Vector<ComponentVersionsInfoJson> versions;
2023-09-17 22:13:42 +03:00
@Override
public String getIconPath() {
return "/icons/Components.png";
}
@Override
2025-02-14 03:16:43 +03:00
protected boolean isSafe() {
return false;
}
@Override
protected boolean canStart(Object... args) throws Exception {
versions = null;
Vector<String> types = new Vector<>();
for (ComponentType key : Global.components.Data.keySet())
types.add(key.toString());
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);
2023-09-17 22:13:42 +03:00
}
for (Component component : Global.components.Data.values()) {
2023-09-17 22:13:42 +03:00
if (component.CanBeUpdated())
component.CheckIfNeedsUpdateOrPublish();
}
}
}