Рефакторинг проходов запуска, остановки,публикации серверов

v++
This commit is contained in:
2025-02-13 16:20:48 +03:00
parent 016e51dbe5
commit dd1f7f8040
22 changed files with 230 additions and 278 deletions

View File

@@ -0,0 +1,34 @@
package _VisualDVM.Passes.Server;
import _VisualDVM.Global;
import _VisualDVM.GlobalData.RemoteFile.RemoteFile;
import _VisualDVM.Passes.SSH.RepositoryServerSSHPass;
import _VisualDVM.Repository.RepositoryServer;
import java.io.File;
public abstract class PublishServerPass<S extends RepositoryServer> extends RepositoryServerSSHPass<S> {
@Override
public String getIconPath() {
return "/Common/icons/Publish.png";
}
//1. остановить сервер.
//2. заменить файл сервера на компонент визуализатора. переименовать его.
//3. запустить сервер.
@Override
protected void ServerAction() throws Exception {
if (getServer().PingFromClient())
ShutdownServer();
File src = Global.visualiser.getFile();
//-
RemoteFile dst = new RemoteFile(serverHome, getServer().getServerFileName());
user.connection.tryRM(dst);
user.connection.putSingleFile(src, dst);
//-
StartServer();
}
@Override
protected boolean validate() {
if (!getServer().PingFromClient()) {
Log.Writeln_("Не удалось запустить сервер.");
}
return true;
}
}

View File

@@ -0,0 +1,23 @@
package _VisualDVM.Passes.Server;
import _VisualDVM.Global;
import _VisualDVM.Passes.SSH.RepositoryServerSSHPass;
import _VisualDVM.Repository.RepositoryServer;
public abstract class ShutdownServerPass<S extends RepositoryServer> extends RepositoryServerSSHPass<S> {
@Override
public String getIconPath() {
return "/icons/Stop25.png";
}
@Override
protected boolean canStart(Object... args) throws Exception {
if (getServer().PingFromClient()) {
return true;
} else {
Log.Writeln_("Сервер уже неактивен!");
return false;
}
}
@Override
protected void ServerAction() throws Exception {
ShutdownServer();
}
}

View File

@@ -0,0 +1,28 @@
package _VisualDVM.Passes.Server;
import Common.CommonConstants;
import _VisualDVM.Constants;
import _VisualDVM.Global;
import _VisualDVM.GlobalData.RemoteFile.RemoteFile;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.Passes.SSH.RepositoryServerSSHPass;
import _VisualDVM.Repository.RepositoryServer;
import java.util.Date;
public abstract class StartServerPass<S extends RepositoryServer> extends RepositoryServerSSHPass<S> {
@Override
public String getIconPath() {
return "/Common/icons/GreenStart.png";
}
@Override
protected boolean canStart(Object... args) throws Exception {
if (getServer().PingFromClient()) {
Log.Writeln_("Сервер уже активен!");
return false;
}
return true;
}
@Override
protected void ServerAction() throws Exception {
StartServer();
}
}