package _VisualDVM.Passes.All; import Common.Passes.Pass; import Common.Passes.PassException; import Common.Utils.Utils_; import _VisualDVM.Global; import _VisualDVM.Passes.PassCode; import _VisualDVM.Repository.Component.Component; public class UpdateComponent extends Pass { @Override protected PassCode necessary() { return PassCode.CreateComponentBackUp; } @Override protected boolean resetsNecessary() { return true; } @Override protected void body() throws Exception { PassCode subPassCode = null; // switch (Global.mainModule.getComponent().getComponentType()) { case Sapfor_F: case Visualizer_2: subPassCode = Utils_.isWindows() ? PassCode.DownloadComponent : PassCode.BuildComponent; break; case Visualiser: case Instruction: case PerformanceAnalyzer: subPassCode = PassCode.DownloadComponent; break; } if ((subPassCode != null) && Global.mainModule.getPass(subPassCode).Do()) { // if (!Global.mainModule.getComponent().getNewFile().exists()) throw new PassException("Не удалось получить новый файл для компонента " + Global.mainModule.getComponent().getComponentType().getDescription()); //непосредственное обновление. Global.mainModule.getComponent().Update(); } } @Override protected void performFinish() throws Exception { Global.mainModule.getComponent().CheckIfNeedsUpdateOrPublish(); } @Override protected void showDone() throws Exception { Global.components.refreshUpdatesStatus(); } }