package _VisualDVM.Passes.All; import Common.Passes.PassException; import _VisualDVM.GlobalData.RemoteFile.RemoteFile; import _VisualDVM.Passes.Server.TestingServerPass; 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 TestingServerPass { String title; File localFile; @Override protected boolean canStart(Object... args) throws Exception { title = (String) args[0]; target = (RemoteFile) args[1]; return SendRequest(ServerCode.ReceiveFile, target.full_name); } @Override protected void body() throws Exception { localFile = Utils.getTempFileName(target.name); if (request.server_response != null) request.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) ); } }