Add an API to restart with a specific script.
This commit is contained in:
parent
7fcaf3f2c7
commit
1bbcf1c272
1 changed files with 11 additions and 7 deletions
|
@ -1,4 +1,4 @@
|
||||||
From 51fd2b3d6dc835f75d76f5a6729293f6e8768cdf Mon Sep 17 00:00:00 2001
|
From 9887296b1b8adebbcdb19f7ab2e2eea28f6810d3 Mon Sep 17 00:00:00 2001
|
||||||
From: md_5 <md_5@live.com.au>
|
From: md_5 <md_5@live.com.au>
|
||||||
Date: Sat, 23 Feb 2013 12:33:20 +1100
|
Date: Sat, 23 Feb 2013 12:33:20 +1100
|
||||||
Subject: [PATCH] Watchdog Thread.
|
Subject: [PATCH] Watchdog Thread.
|
||||||
|
@ -26,10 +26,10 @@ index 007fb86..51f1761 100644
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/org/spigotmc/RestartCommand.java b/src/main/java/org/spigotmc/RestartCommand.java
|
diff --git a/src/main/java/org/spigotmc/RestartCommand.java b/src/main/java/org/spigotmc/RestartCommand.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000..3e4203f
|
index 0000000..5fa56c0
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/org/spigotmc/RestartCommand.java
|
+++ b/src/main/java/org/spigotmc/RestartCommand.java
|
||||||
@@ -0,0 +1,113 @@
|
@@ -0,0 +1,117 @@
|
||||||
+package org.spigotmc;
|
+package org.spigotmc;
|
||||||
+
|
+
|
||||||
+import java.io.File;
|
+import java.io.File;
|
||||||
|
@ -62,11 +62,15 @@ index 0000000..3e4203f
|
||||||
+
|
+
|
||||||
+ public static void restart()
|
+ public static void restart()
|
||||||
+ {
|
+ {
|
||||||
|
+ restart( new File( SpigotConfig.restartScript ) );
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ public static void restart(File script)
|
||||||
|
+ {
|
||||||
+ AsyncCatcher.enabled = false; // Disable async catcher incase it interferes with us
|
+ AsyncCatcher.enabled = false; // Disable async catcher incase it interferes with us
|
||||||
+ try
|
+ try
|
||||||
+ {
|
+ {
|
||||||
+ final File file = new File( SpigotConfig.restartScript );
|
+ if ( script.isFile() )
|
||||||
+ if ( file.isFile() )
|
|
||||||
+ {
|
+ {
|
||||||
+ System.out.println( "Attempting to restart with " + SpigotConfig.restartScript );
|
+ System.out.println( "Attempting to restart with " + SpigotConfig.restartScript );
|
||||||
+
|
+
|
||||||
|
@ -115,12 +119,12 @@ index 0000000..3e4203f
|
||||||
+ String os = System.getProperty( "os.name" ).toLowerCase();
|
+ String os = System.getProperty( "os.name" ).toLowerCase();
|
||||||
+ if ( os.contains( "win" ) )
|
+ if ( os.contains( "win" ) )
|
||||||
+ {
|
+ {
|
||||||
+ Runtime.getRuntime().exec( "cmd /c start " + file.getPath() );
|
+ Runtime.getRuntime().exec( "cmd /c start " + script.getPath() );
|
||||||
+ } else
|
+ } else
|
||||||
+ {
|
+ {
|
||||||
+ Runtime.getRuntime().exec( new String[]
|
+ Runtime.getRuntime().exec( new String[]
|
||||||
+ {
|
+ {
|
||||||
+ "sh", file.getPath()
|
+ "sh", script.getPath()
|
||||||
+ } );
|
+ } );
|
||||||
+ }
|
+ }
|
||||||
+ } catch ( Exception e )
|
+ } catch ( Exception e )
|
||||||
|
|
Loading…
Reference in a new issue