Package org.wildfly.plugin.tools.server
Class StandaloneManager
- java.lang.Object
-
- org.wildfly.plugin.tools.server.StandaloneManager
-
- All Implemented Interfaces:
ServerManager
public class StandaloneManager extends Object
A utility for managing a standalone server.- Author:
- James R. Perkins
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.wildfly.plugin.tools.server.ServerManager
ServerManager.Builder
-
-
Field Summary
Fields Modifier and Type Field Description protected ProcessHandleprocess
-
Constructor Summary
Constructors Modifier Constructor Description protectedStandaloneManager(ProcessHandle process, org.jboss.as.controller.client.ModelControllerClient client)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.jboss.as.controller.client.ModelControllerClientclient()Returns the client associated with this server manager.ContainerDescriptioncontainerDescription()Returns the container description for the running server.DeploymentManagerdeploymentManager()Returns the deployment manager for the server.voidexecuteReload()Reloads the server and returns immediately.voidexecuteReload(org.jboss.dmr.ModelNode reloadOp)Reloads the server and returns immediately.booleanisRunning()Checks to see if a server is running.StringlaunchType()Determines the servers "launch-type".voidreloadIfRequired()Checks if the container status is "reload-required" and if it's the case, executes reload and waits for completion with a 10 second timeout.voidreloadIfRequired(long timeout, TimeUnit unit)Checks if the container status is "reload-required" and if it's the case, executes reload and waits for completion.StringserverState()Gets the "server-state" for standalone servers or the "host-state" for domain servers.voidshutdown()Shuts down the server.voidshutdown(long timeout)Shuts down the server.StringtakeSnapshot()Takes a snapshot of the current servers configuration and returns the relative file name of the snapshot.booleanwaitFor(long startupTimeout, TimeUnit unit)Waits the given amount of time for a server to start.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.wildfly.plugin.tools.server.ServerManager
waitFor
-
-
-
-
Field Detail
-
process
protected final ProcessHandle process
-
-
Constructor Detail
-
StandaloneManager
protected StandaloneManager(ProcessHandle process, org.jboss.as.controller.client.ModelControllerClient client)
-
-
Method Detail
-
client
public org.jboss.as.controller.client.ModelControllerClient client()
Description copied from interface:ServerManagerReturns the client associated with this server manager.- Returns:
- a client to communicate with the server
-
serverState
public String serverState()
Description copied from interface:ServerManagerGets the "server-state" for standalone servers or the "host-state" for domain servers.- Returns:
- the server-state or "failed" if an error occurred
-
executeReload
public void executeReload() throws IOExceptionDescription copied from interface:ServerManagerReloads the server and returns immediately.- Throws:
IOException- if an error occurs communicating with the server
-
reloadIfRequired
public void reloadIfRequired() throws IOExceptionDescription copied from interface:ServerManagerChecks if the container status is "reload-required" and if it's the case, executes reload and waits for completion with a 10 second timeout.- Throws:
IOException- if an error occurs communicating with the server- See Also:
ServerManager.reloadIfRequired(long, TimeUnit)
-
reloadIfRequired
public void reloadIfRequired(long timeout, TimeUnit unit) throws IOExceptionDescription copied from interface:ServerManagerChecks if the container status is "reload-required" and if it's the case, executes reload and waits for completion.- Parameters:
timeout- the time to wait for the server to reloadunit- the time unit for thetimeoutargument- Throws:
IOException- if an error occurs communicating with the server
-
isRunning
public boolean isRunning()
Description copied from interface:ServerManagerChecks to see if a server is running.- Returns:
trueif the server is running, otherwisefalse
-
shutdown
public void shutdown() throws IOExceptionDescription copied from interface:ServerManagerShuts down the server.- Throws:
IOException- if an error occurs communicating with the server
-
shutdown
public void shutdown(long timeout) throws IOExceptionDescription copied from interface:ServerManagerShuts down the server.- Parameters:
timeout- the graceful shutdown timeout, a value of-1will wait indefinitely and a value of0will not attempt a graceful shutdown- Throws:
IOException- if an error occurs communicating with the server
-
containerDescription
public ContainerDescription containerDescription() throws IOException
Description copied from interface:ServerManagerReturns the container description for the running server.- Specified by:
containerDescriptionin interfaceServerManager- Returns:
- the container description for the running server
- Throws:
IOException- if an error occurs communicating with the server
-
deploymentManager
public DeploymentManager deploymentManager()
Description copied from interface:ServerManagerReturns the deployment manager for the server.- Specified by:
deploymentManagerin interfaceServerManager- Returns:
- the deployment manager
-
launchType
public String launchType()
Determines the servers "launch-type".- Specified by:
launchTypein interfaceServerManager- Returns:
- the servers launch-type or "unknown" if it could not be determined
-
waitFor
public boolean waitFor(long startupTimeout, TimeUnit unit) throws InterruptedExceptionDescription copied from interface:ServerManagerWaits the given amount of time for a server to start.If the
processis notnulland a timeout occurs the process will be destroyed.- Specified by:
waitForin interfaceServerManager- Parameters:
startupTimeout- the time, to wait for the server startunit- the time unit for thestartupTimeoutargument- Returns:
trueif the server is up and running,falseif a timeout occurred waiting for the server to be in a running state- Throws:
InterruptedException- if interrupted while waiting for the server to start
-
takeSnapshot
public String takeSnapshot() throws IOException
Takes a snapshot of the current servers configuration and returns the relative file name of the snapshot.This simply executes the
take-snapshotoperation with no arguments.- Specified by:
takeSnapshotin interfaceServerManager- Returns:
- the file name of the snapshot configuration file
- Throws:
IOException- if an error occurs executing the operation
-
executeReload
public void executeReload(org.jboss.dmr.ModelNode reloadOp)
Reloads the server and returns immediately.- Specified by:
executeReloadin interfaceServerManager- Parameters:
reloadOp- the reload operation to execute
-
-