Archived
0

fix: несколько исправлений в модуле SingleServer

This commit is contained in:
2016-08-15 14:29:52 +03:00
parent b2cb7ce6c1
commit cf35de827d
4 changed files with 24 additions and 11 deletions

View File

@@ -20,7 +20,7 @@
<groupId>asys</groupId>
<artifactId>singleserver</artifactId>
<version>0.1</version>
<version>0.2</version>
<packaging>bundle</packaging>
<dependencies>

View File

@@ -19,10 +19,15 @@ public class Commands {
this.serverManager = serverManager;
}
private void log(String format, Object... objects) {
System.out.printf(format+"\n", objects);
}
@Command
@Descriptor("Server start")
public void start() {
serverManager.getServer().start();
log("Server start");
}
@Command
@@ -30,13 +35,15 @@ public class Commands {
public void stop() {
serverManager.getServer().stop();
serverManager.removeServer();
log("Server stop");
}
@Command
@Descriptor("Server force stop")
public void forceStop() {
public void kill() {
serverManager.getServer().forceStop();
serverManager.removeServer();
log("Server kill");
}
@Command
@@ -45,13 +52,18 @@ public class Commands {
MinecraftServer server = serverManager.getServer();
server.stop();
server.start();
log("Server restart");
}
@Command
@Descriptor("Server is alive?")
public void isAlive() {
boolean alive = serverManager.getServer().isAlive();
System.out.println(String.format("Server is alive: %s", alive));
public void alive() {
boolean alive = false;
MinecraftServer server = serverManager.getServer();
if (server != null) alive = server.isAlive();
log("Server alive: %s", alive);
}
@Command

View File

@@ -15,9 +15,7 @@ import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Properties;
public class SingleServer
implements ServerManager
{
public class SingleServer implements ServerManager {
private MinecraftServer mcServer;
private Properties configuration;

View File

@@ -84,16 +84,19 @@ public class MinecraftScreenServer implements MinecraftServer {
}
public boolean isAlive() {
if (serverPID == null) return false;
try {
Process process = Runtime.getRuntime().exec("ps -p " + this.serverPID);
Process process = Runtime.getRuntime().exec("ps -p " + serverPID);
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
br.readLine();
String line = br.readLine();
br.close();
return line != null;
} catch (Exception e) {
e.printStackTrace(); }
e.printStackTrace();
return false;
}
}
}