package _VisualDVM.Passes.All; import Common.Passes.PassException; import _VisualDVM.GlobalData.RemoteFile.RemoteFile; import _VisualDVM.Passes.Server.TestingSystemPass_OLD; import _VisualDVM.Repository.Server.ServerCode; import _VisualDVM.Repository.Server.ServerExchangeUnit_2021; import _VisualDVM.Utils; import _VisualDVM.Visual.Windows.ReadOnlyMultilineTextForm; import org.apache.commons.io.FileUtils; import java.io.File; import java.util.List; import java.util.Vector; public class ShowTestingServerFile extends TestingSystemPass_OLD { String title; File localFile; @Override protected boolean canStart(Object... args) throws Exception { title = (String) args[0]; target = (RemoteFile) args[1]; return true; } @Override protected void ServerAction() throws Exception { Command(new ServerExchangeUnit_2021(ServerCode.ReceiveFile, target.full_name)); localFile = Utils.getTempFileName(target.name); if (server_response.object != null) server_response.Unpack(localFile); else throw new PassException("Файл не найден"); } @Override protected boolean validate() { return localFile.exists(); } @Override protected void showDone() throws Exception { ReadOnlyMultilineTextForm ff = new ReadOnlyMultilineTextForm(); List lines = FileUtils.readLines(localFile); Vector res = new Vector<>(); for (int i = lines.size() - 1; i >= 0; i--) res.add(lines.get(i)); ff.ShowDialog(title, String.join("\n", res) ); } }