реализация остановки сервера тестирования по кнопке

This commit is contained in:
2024-03-23 23:28:02 +03:00
parent 9f1777431c
commit 40feda7c5e
10 changed files with 105 additions and 55 deletions

View File

@@ -0,0 +1,52 @@
package Visual_DVM_2021.Passes.All;
import Common.Constants;
import Common.Current;
import Common.UI.UI;
import Common.Utils.Utils;
import GlobalData.RemoteFile.RemoteFile;
import Visual_DVM_2021.Passes.SSH.TestingServerSSHPass;
import com.jcraft.jsch.ChannelSftp;
import com.sun.corba.se.spi.orbutil.threadpool.Work;
import java.util.Date;
import java.util.Vector;
public class StopTestingServer extends TestingServerSSHPass {
@Override
public String getIconPath() {
return "/icons/Stop25.png";
}
@Override
public String getButtonText() {
return "";
}
@Override
protected void ServerAction() throws Exception {
RemoteFile Home = new RemoteFile(user.connection.sftpChannel.getHome(), true);
RemoteFile Workspace = new RemoteFile(Home, Constants.testingSystemHomeName);
//--
RemoteFile INTERRUPT = new RemoteFile(Workspace, Constants.INTERRUPT);
RemoteFile ABORTED = new RemoteFile(Workspace, Constants.ABORTED);
//--
System.out.println("Home="+Utils.Brackets(Home.full_name));
System.out.println("Workspace="+Utils.Brackets(Workspace.full_name));
ShowMessage1("Создание файла INTERRUPT..");
user.connection.writeToFile("+", INTERRUPT);
ShowMessage1("Ожидание остановки сервера тестирования");
do {
Utils.sleep(1000);
ShowMessage2("Проверка признака остановки..");
} while (!user.connection.Exists(ABORTED));
//--
RemoteFile AbortLog = new RemoteFile(Workspace, Constants.ABORTED+
"_by_"+
Current.getAccount().email+
"_"+
new Date().toString()
);
user.connection.writeToFile("+", AbortLog);
user.connection.sftpChannel.rename(ABORTED.full_name, AbortLog.full_name);
System.out.println("Done");
}
}