package _VisualDVM.Passes.All; import _VisualDVM.Global; import _VisualDVM.Passes.Server.ClientPass; import _VisualDVM.Passes.Server.ComponentsServerClientPass; 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 java.util.Vector; public class GetComponentsActualVersions extends ComponentsServerClientPass { Vector versions; @Override public String getIconPath() { return "/icons/Components.png"; } @Override protected boolean canStart(Object... args) throws Exception { versions = null; Vector types = new Vector<>(); for (ComponentType key : Global.components.Data.keySet()) types.add(key.toString()); if (SendRequest(ServerCode.GetComponentsVersionsInfo, "", types)) { versions = (Vector) 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); } for (Component component : Global.components.Data.values()) { if (component.CanBeUpdated()) component.CheckIfNeedsUpdateOrPublish(); } } }