Package org.eclipse.jetty.server
Class ShutdownMonitor
java.lang.Object
org.eclipse.jetty.server.ShutdownMonitor
Shutdown/Stop Monitor thread.
This thread listens on the host/port specified by the STOP.HOST/STOP.PORT system parameter (defaults to 127.0.0.1/-1 for not listening) for request authenticated with the key given by the STOP.KEY system parameter for admin requests.
If the stop port is set to zero, then a random port is assigned and the port number is printed to stdout.
Commands "stop" and "status" are currently supported.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
private class
Thread for listening to STOP.PORT for command to stop Jetty. -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
Creates a ShutdownMonitor using configuration from the System properties. -
Method Summary
Modifier and TypeMethodDescriptionprivate void
addLifeCycles
(LifeCycle... lifeCycles) (package private) void
await()
private boolean
containsLifeCycle
(LifeCycle lifeCycle) private void
private void
static void
deregister
(LifeCycle lifeCycle) static ShutdownMonitor
getKey()
int
getPort()
protected boolean
isAlive()
boolean
isExitVm()
static boolean
isRegistered
(LifeCycle lifeCycle) private ServerSocket
listen()
static void
private void
removeLifeCycle
(LifeCycle lifeCycle) protected static void
reset()
void
setDebug
(boolean flag) void
setExitVm
(boolean exitVm) void
void
setPort
(int port) protected void
start()
private void
stop()
toString()
-
Field Details
-
_lifeCycles
-
debug
private boolean debug -
host
-
port
private int port -
key
-
exitVm
private boolean exitVm -
alive
private boolean alive
-
-
Constructor Details
-
ShutdownMonitor
private ShutdownMonitor()Creates a ShutdownMonitor using configuration from the System properties.STOP.PORT
= the port to listen on (empty, null, or values less than 0 disable the stop ability)
STOP.KEY
= the magic key/passphrase to allow the stop
Note: server socket will only listen on localhost, and a successful stop will issue a System.exit() call.
-
-
Method Details
-
getInstance
-
reset
protected static void reset() -
register
-
deregister
-
isRegistered
-
addLifeCycles
-
removeLifeCycle
-
containsLifeCycle
-
debug
-
debug
-
getKey
-
getPort
public int getPort() -
isExitVm
public boolean isExitVm() -
setDebug
public void setDebug(boolean flag) -
setExitVm
public void setExitVm(boolean exitVm) - Parameters:
exitVm
- true to exit the VM on shutdown
-
setKey
-
setPort
public void setPort(int port) -
start
- Throws:
Exception
-
stop
private void stop() -
await
- Throws:
InterruptedException
-
isAlive
protected boolean isAlive() -
listen
-
toString
-