package _VisualDVM.Passes.All; import Common.Utils.Utils_; import _VisualDVM.Global; import _VisualDVM.Passes.Server.ComponentsRepositoryPass; import _VisualDVM.Repository.BugReport.BugReport; import _VisualDVM.Repository.Server.ServerCode; import _VisualDVM.Repository.Server.ServerExchangeUnit_2021; public class DownloadBugReport extends ComponentsRepositoryPass { @Override protected boolean canStart(Object... args) { target = (BugReport) args[0]; return !target.getArchiveFile().exists(); } @Override protected void performPreparation() throws Exception { Utils_.CheckDirectory(Global.BugReportsDirectory); } @Override protected void ServerAction() throws Exception { Command(new ServerExchangeUnit_2021(ServerCode.ReceiveBugReport, target.id)); Utils_.bytesToFile((byte[]) response.object, target.getArchiveFile()); } @Override protected boolean validate() { return target.getArchiveFile().exists(); } }