Class DomainClientImpl
- java.lang.Object
-
- org.jboss.as.controller.client.helpers.domain.impl.DomainClientImpl
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,DomainClient
,ModelControllerClient
public class DomainClientImpl extends Object implements DomainClient
Domain client implementation.- Author:
- John Bailey
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.jboss.as.controller.client.helpers.domain.DomainClient
DomainClient.Factory
-
-
Constructor Summary
Constructors Constructor Description DomainClientImpl(String protocol, InetAddress address, int port)
DomainClientImpl(String protocol, InetAddress address, int port, CallbackHandler handler)
DomainClientImpl(InetAddress address, int port)
DomainClientImpl(InetAddress address, int port, CallbackHandler handler)
DomainClientImpl(ModelControllerClient delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]
addDeploymentContent(InputStream stream)
Add the content for a deployment to the domain controller.void
close()
ModelNode
execute(Operation operation)
Execute an operation synchronously.ModelNode
execute(Operation operation, OperationMessageHandler messageHandler)
Execute an operation synchronously, optionally receiving progress reports.ModelNode
execute(ModelNode operation)
Execute an operation synchronously.ModelNode
execute(ModelNode operation, OperationMessageHandler messageHandler)
Execute an operation synchronously, optionally receiving progress reports.org.jboss.threads.AsyncFuture<ModelNode>
executeAsync(Operation operation, OperationMessageHandler messageHandler)
Execute an operation in another thread, optionally receiving progress reports.org.jboss.threads.AsyncFuture<ModelNode>
executeAsync(ModelNode operation, OperationMessageHandler messageHandler)
Execute an operation in another thread, optionally receiving progress reports.OperationResponse
executeOperation(Operation operation, OperationMessageHandler messageHandler)
Execute an operation synchronously, optionally receiving progress reports, with the response to the operation making available any input streams that the server may associate with the response.org.jboss.threads.AsyncFuture<OperationResponse>
executeOperationAsync(Operation operation, OperationMessageHandler messageHandler)
Execute an operation in another thread, optionally receiving progress reports, with the response to the operation making available any input streams that the server may associate with the response.DomainDeploymentManager
getDeploymentManager()
Gets aDomainDeploymentManager
that provides a convenience API for manipulating domain deployments.List<String>
getHostControllerNames()
Gets the list of currently running host controllers.Map<ServerIdentity,ServerStatus>
getServerStatuses()
Gets a list of all servers known to the domain, along with their currentstatus
.ServerStatus
restartServer(String hostControllerName, String serverName, long gracefulShutdownTimeout, TimeUnit timeUnit)
Restarts the given server.ServerStatus
startServer(String hostControllerName, String serverName)
Starts the given server.ServerStatus
stopServer(String hostControllerName, String serverName, long gracefulShutdownTimeout, TimeUnit timeUnit)
Stops the given server.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jboss.as.controller.client.ModelControllerClient
executeAsync, executeAsync
-
-
-
-
Constructor Detail
-
DomainClientImpl
public DomainClientImpl(InetAddress address, int port)
-
DomainClientImpl
public DomainClientImpl(InetAddress address, int port, CallbackHandler handler)
-
DomainClientImpl
public DomainClientImpl(String protocol, InetAddress address, int port)
-
DomainClientImpl
public DomainClientImpl(String protocol, InetAddress address, int port, CallbackHandler handler)
-
DomainClientImpl
public DomainClientImpl(ModelControllerClient delegate)
-
-
Method Detail
-
execute
public ModelNode execute(ModelNode operation) throws IOException
Description copied from interface:ModelControllerClient
Execute an operation synchronously.- Specified by:
execute
in interfaceModelControllerClient
- Parameters:
operation
- the operation to execute- Returns:
- the result of the operation
- Throws:
IOException
- if an I/O error occurs while executing the operation
-
execute
public ModelNode execute(Operation operation) throws IOException
Description copied from interface:ModelControllerClient
Execute an operation synchronously. Note that associated input-streams have to be closed by the caller, after the operation completedOperationAttachments.isAutoCloseStreams()
.- Specified by:
execute
in interfaceModelControllerClient
- Parameters:
operation
- the operation to execute- Returns:
- the result of the operation
- Throws:
IOException
- if an I/O error occurs while executing the operation
-
execute
public ModelNode execute(ModelNode operation, OperationMessageHandler messageHandler) throws IOException
Description copied from interface:ModelControllerClient
Execute an operation synchronously, optionally receiving progress reports.- Specified by:
execute
in interfaceModelControllerClient
- Parameters:
operation
- the operation to executemessageHandler
- the message handler to use for operation progress reporting, ornull
for none- Returns:
- the result of the operation
- Throws:
IOException
- if an I/O error occurs while executing the operation
-
execute
public ModelNode execute(Operation operation, OperationMessageHandler messageHandler) throws IOException
Description copied from interface:ModelControllerClient
Execute an operation synchronously, optionally receiving progress reports.Note that associated input-streams have to be closed by the caller, after the operation completed
OperationAttachments.isAutoCloseStreams()
.- Specified by:
execute
in interfaceModelControllerClient
- Parameters:
operation
- the operation to executemessageHandler
- the message handler to use for operation progress reporting, ornull
for none- Returns:
- the result of the operation
- Throws:
IOException
- if an I/O error occurs while executing the operation
-
executeAsync
public org.jboss.threads.AsyncFuture<ModelNode> executeAsync(ModelNode operation, OperationMessageHandler messageHandler)
Description copied from interface:ModelControllerClient
Execute an operation in another thread, optionally receiving progress reports.- Specified by:
executeAsync
in interfaceModelControllerClient
- Parameters:
operation
- the operation to executemessageHandler
- the message handler to use for operation progress reporting, ornull
for none- Returns:
- the future result of the operation
-
executeAsync
public org.jboss.threads.AsyncFuture<ModelNode> executeAsync(Operation operation, OperationMessageHandler messageHandler)
Description copied from interface:ModelControllerClient
Execute an operation in another thread, optionally receiving progress reports.Note that associated input-streams have to be closed by the caller, after the operation completed
OperationAttachments.isAutoCloseStreams()
.- Specified by:
executeAsync
in interfaceModelControllerClient
- Parameters:
operation
- the operation to executemessageHandler
- the message handler to use for operation progress reporting, ornull
for none- Returns:
- the future result of the operation
-
executeOperation
public OperationResponse executeOperation(Operation operation, OperationMessageHandler messageHandler) throws IOException
Description copied from interface:ModelControllerClient
Execute an operation synchronously, optionally receiving progress reports, with the response to the operation making available any input streams that the server may associate with the response.Note that associated input-streams have to be closed by the caller, after the operation completed
OperationAttachments.isAutoCloseStreams()
.- Specified by:
executeOperation
in interfaceModelControllerClient
- Parameters:
operation
- the operation to executemessageHandler
- the message handler to use for operation progress reporting, ornull
for none- Returns:
- the result of the operation
- Throws:
IOException
- if an I/O error occurs while executing the operation
-
executeOperationAsync
public org.jboss.threads.AsyncFuture<OperationResponse> executeOperationAsync(Operation operation, OperationMessageHandler messageHandler)
Description copied from interface:ModelControllerClient
Execute an operation in another thread, optionally receiving progress reports, with the response to the operation making available any input streams that the server may associate with the response.Note that associated input-streams have to be closed by the caller, after the operation completed
OperationAttachments.isAutoCloseStreams()
.- Specified by:
executeOperationAsync
in interfaceModelControllerClient
- Parameters:
operation
- the operation to executemessageHandler
- the message handler to use for operation progress reporting, ornull
for none- Returns:
- the future result of the operation
-
addDeploymentContent
public byte[] addDeploymentContent(InputStream stream)
Description copied from interface:DomainClient
Add the content for a deployment to the domain controller. Note thatthe DomainDeploymentManager offers a more convenient API for manipulating domain deployments.
- Specified by:
addDeploymentContent
in interfaceDomainClient
- Parameters:
stream
- the data stream for the deployment- Returns:
- the unique hash for the deployment
-
getDeploymentManager
public DomainDeploymentManager getDeploymentManager()
Description copied from interface:DomainClient
Gets aDomainDeploymentManager
that provides a convenience API for manipulating domain deployments.- Specified by:
getDeploymentManager
in interfaceDomainClient
- Returns:
- the deployment manager. Will not be
null
-
getHostControllerNames
public List<String> getHostControllerNames()
Description copied from interface:DomainClient
Gets the list of currently running host controllers.- Specified by:
getHostControllerNames
in interfaceDomainClient
- Returns:
- the names of the host controllers. Will not be
null
-
getServerStatuses
public Map<ServerIdentity,ServerStatus> getServerStatuses()
Description copied from interface:DomainClient
Gets a list of all servers known to the domain, along with their currentstatus
. Servers associated with host controllers that are currently off line will not be included.- Specified by:
getServerStatuses
in interfaceDomainClient
- Returns:
- the servers and their current status. Will not be
null
-
startServer
public ServerStatus startServer(String hostControllerName, String serverName)
Description copied from interface:DomainClient
Starts the given server. Ignored if the server is not stopped.- Specified by:
startServer
in interfaceDomainClient
- Parameters:
hostControllerName
- the name of the host controller responsible for the serverserverName
- the name of the server- Returns:
- the status of the server following the start. Will not be
null
-
stopServer
public ServerStatus stopServer(String hostControllerName, String serverName, long gracefulShutdownTimeout, TimeUnit timeUnit)
Description copied from interface:DomainClient
Stops the given server.- Specified by:
stopServer
in interfaceDomainClient
- Parameters:
hostControllerName
- the name of the host controller responsible for the serverserverName
- the name of the servergracefulShutdownTimeout
- maximum period to wait to allow the server to gracefully handle long running tasks before shutting down, or-1
to shutdown immediatelytimeUnit
- time unit in whichgracefulShutdownTimeout
is expressed- Returns:
- the status of the server following the stop. Will not be
null
-
restartServer
public ServerStatus restartServer(String hostControllerName, String serverName, long gracefulShutdownTimeout, TimeUnit timeUnit)
Description copied from interface:DomainClient
Restarts the given server.- Specified by:
restartServer
in interfaceDomainClient
- Parameters:
hostControllerName
- the name of the host controller responsible for the serverserverName
- the name of the servergracefulShutdownTimeout
- maximum period to wait to allow the server to gracefully handle long running tasks before shutting down, or-1
to shutdown immediatelytimeUnit
- time unit in whichgracefulShutdownTimeout
is expressed- Returns:
- the status of the server following the restart. Will not be
null
-
close
public void close() throws IOException
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
-