2024-10-14 12:14:01 +03:00
|
|
|
package _VisualDVM.Passes.All;
|
2024-10-07 00:58:29 +03:00
|
|
|
import _VisualDVM.Global;
|
2025-02-03 20:31:34 +03:00
|
|
|
import _VisualDVM.Passes.Server.ClientPass;
|
2025-02-04 16:33:06 +03:00
|
|
|
import _VisualDVM.Passes.Server.ComponentsServerClientPass;
|
2024-10-09 22:21:57 +03:00
|
|
|
import _VisualDVM.Repository.Component.Component;
|
|
|
|
|
import _VisualDVM.Repository.Component.ComponentType;
|
2025-02-03 20:31:34 +03:00
|
|
|
import _VisualDVM.Repository.Component.Json.ComponentVersionsInfoJson;
|
|
|
|
|
import _VisualDVM.Repository.Server.ComponentsServer;
|
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:33:06 +03:00
|
|
|
public class GetComponentsActualVersions extends ComponentsServerClientPass<Object> {
|
2025-02-03 23:04:40 +03:00
|
|
|
Vector<ComponentVersionsInfoJson> versions;
|
2023-09-17 22:13:42 +03:00
|
|
|
@Override
|
|
|
|
|
public String getIconPath() {
|
|
|
|
|
return "/icons/Components.png";
|
|
|
|
|
}
|
|
|
|
|
@Override
|
2025-02-03 23:04:40 +03:00
|
|
|
protected boolean canStart(Object... args) throws Exception {
|
|
|
|
|
versions = null;
|
2025-02-03 20:31:34 +03:00
|
|
|
Vector<String> types = new Vector<>();
|
2025-02-03 23:04:40 +03:00
|
|
|
for (ComponentType key : Global.components.Data.keySet())
|
2025-02-03 20:31:34 +03:00
|
|
|
types.add(key.toString());
|
2025-02-03 23:04:40 +03:00
|
|
|
if (SendRequest(ServerCode.GetComponentsVersionsInfo, "", types)) {
|
|
|
|
|
versions = (Vector<ComponentVersionsInfoJson>) request.target;
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void body() throws Exception {
|
|
|
|
|
for (ComponentVersionsInfoJson info : versions) {
|
2025-02-03 20:31:34 +03:00
|
|
|
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
|
|
|
}
|
2024-10-22 20:16:57 +03:00
|
|
|
for (Component component : Global.components.Data.values()) {
|
2023-09-17 22:13:42 +03:00
|
|
|
if (component.CanBeUpdated())
|
|
|
|
|
component.CheckIfNeedsUpdateOrPublish();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|