Package org.wildfly.plugin.tools.server
Class ServerManager.Builder
- java.lang.Object
-
- org.wildfly.plugin.tools.server.ServerManager.Builder
-
- Enclosing interface:
- ServerManager
public static class ServerManager.Builder extends Object
A builder used to build aServerManager.
-
-
Constructor Summary
Constructors Modifier Constructor Description Builder()protectedBuilder(Configuration<?> configuration)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CompletableFuture<ServerManager>build()Creates either aDomainManagerorStandaloneManagerbased on theServerManager.launchType(ModelControllerClient).ServerManager.Builderclient(org.jboss.as.controller.client.ModelControllerClient client)Sets the client to use for the server manager.DomainManagerdomain()Creates aDomainManagerbased on the builders settings.ServerManager.BuildermanagementAddress(String managementAddress)The management address to use for the client if the client has not been set.ServerManager.BuildermanagementPort(int managementPort)The management port to use for the client if the client has not been set.ServerManager.Builderprocess(Process process)The process to associate with the server manager.ServerManager.Builderprocess(ProcessHandle process)The process handle to associate with the server manager.ServerManager.BuildershutdownOnClose(boolean shutdownOnClose)StandaloneManagerstandalone()Creates aStandaloneManagerbased on the builders settings.
-
-
-
Constructor Detail
-
Builder
public Builder()
-
Builder
protected Builder(Configuration<?> configuration)
-
-
Method Detail
-
client
public ServerManager.Builder client(org.jboss.as.controller.client.ModelControllerClient client)
Sets the client to use for the server manager.If the this server manager is closed, the client will also be closed.
- Parameters:
client- the client to use to communicate with the server- Returns:
- this builder
-
process
public ServerManager.Builder process(ProcessHandle process)
The process handle to associate with the server manager.- Parameters:
process- the process handle to associate with the server manager- Returns:
- this builder
-
process
public ServerManager.Builder process(Process process)
The process to associate with the server manager. If theprocessargument is notnull, this simply invokesprocess(process.toHandle()).- Parameters:
process- the process to associate with the server manager- Returns:
- this builder
- See Also:
process(ProcessHandle)
-
managementAddress
public ServerManager.Builder managementAddress(String managementAddress)
The management address to use for the client if the client has not been set.- Parameters:
managementAddress- the management address, default islocalhost- Returns:
- this builder
-
managementPort
public ServerManager.Builder managementPort(int managementPort)
The management port to use for the client if the client has not been set.- Parameters:
managementPort- the management port, default is9990- Returns:
- this builder
-
shutdownOnClose
public ServerManager.Builder shutdownOnClose(boolean shutdownOnClose)
- Parameters:
shutdownOnClose-trueto shutdown the server when the server manager is closed- Returns:
- this builder
- Since:
- 1.2
-
standalone
public StandaloneManager standalone()
Creates aStandaloneManagerbased on the builders settings. If theclientwas not set, themanagementAddressand themanagementPortwill be used to create the client.- Returns:
- a new
StandaloneManager
-
domain
public DomainManager domain()
Creates aDomainManagerbased on the builders settings. If theclientwas not set, themanagementAddressand themanagementPortwill be used to create the client.- Returns:
- a new
DomainManager
-
build
public CompletableFuture<ServerManager> build()
Creates either aDomainManagerorStandaloneManagerbased on theServerManager.launchType(ModelControllerClient). If theclientwas not set, themanagementAddressand themanagementPortwill be used to create the client.Note that if the process was not set, the future may never complete if a server is never started. It's best practice to either use a known
standalone()ordomain()server manager type, or use theCompletableFuture.get(long, TimeUnit)method to timeout if a server was never started.- Returns:
- a completable future that will eventually produce a
DomainManagerorStandaloneManagerassuming a server is running
-
-