@Override public boolean serverReconnected(String serverProcessName, ManagementChannelHandler channelHandler) { final String serverName = ManagedServer.getServerName(serverProcessName); final ManagedServer server = servers.get(serverName); // Register the new communication channel serverCommunicationRegistered(serverProcessName, channelHandler); // Mark the server as started serverStarted(serverProcessName); // Register the server proxy at the domain controller domainController.registerRunningServer(server.getProxyController()); // If the server requires a reload, means we are out of sync return server.isRequiresReload() == false; }
@Override public boolean serverReconnected(String serverProcessName, ManagementChannelHandler channelHandler) { final String serverName = ManagedServer.getServerName(serverProcessName); final ManagedServer server = servers.get(serverName); // Register the new communication channel serverCommunicationRegistered(serverProcessName, channelHandler); // Mark the server as started serverStarted(serverProcessName); // Register the server proxy at the domain controller domainController.registerRunningServer(server.getProxyController()); // If the server requires a reload, means we are out of sync return server.isRequiresReload() == false; }
@Override public ProxyController serverCommunicationRegistered(final String serverProcessName, final ManagementChannelHandler channelAssociation) { if(shutdown || connectionFinished) { throw HostControllerLogger.ROOT_LOGGER.hostAlreadyShutdown(); } final String serverName = ManagedServer.getServerName(serverProcessName); final ManagedServer server = servers.get(serverName); if(server == null) { ROOT_LOGGER.noServerAvailable(serverName); return null; } try { final TransactionalProtocolClient client = server.channelRegistered(channelAssociation); final Channel channel = channelAssociation.getChannel(); channel.addCloseHandler(new CloseHandler<Channel>() { public void handleClose(final Channel closed, final IOException exception) { final boolean shuttingDown = shutdown || connectionFinished; // Unregister right away if(server.callbackUnregistered(client, shuttingDown)) { domainController.unregisterRunningServer(server.getServerName()); } } }); return server.getProxyController(); } catch (IOException e) { throw new RuntimeException(e); } }
@Override public ProxyController serverCommunicationRegistered(final String serverProcessName, final ManagementChannelHandler channelAssociation) { if(shutdown || connectionFinished) { throw HostControllerMessages.MESSAGES.hostAlreadyShutdown(); } final String serverName = ManagedServer.getServerName(serverProcessName); final ManagedServer server = servers.get(serverName); if(server == null) { ROOT_LOGGER.noServerAvailable(serverName); return null; } try { final TransactionalProtocolClient client = server.channelRegistered(channelAssociation); final Channel channel = channelAssociation.getChannel(); channel.addCloseHandler(new CloseHandler<Channel>() { public void handleClose(final Channel closed, final IOException exception) { final boolean shuttingDown = shutdown || connectionFinished; // Unregister right away if(server.callbackUnregistered(client, shuttingDown)) { domainController.unregisterRunningServer(server.getServerName()); } } }); return server.getProxyController(); } catch (IOException e) { throw new RuntimeException(e); } }
@Override public ProxyController serverCommunicationRegistered(final String serverProcessName, final ManagementChannelHandler channelAssociation) { if(shutdown || connectionFinished) { throw HostControllerLogger.ROOT_LOGGER.hostAlreadyShutdown(); } final String serverName = ManagedServer.getServerName(serverProcessName); final ManagedServer server = servers.get(serverName); if(server == null) { ROOT_LOGGER.noServerAvailable(serverName); return null; } try { final TransactionalProtocolClient client = server.channelRegistered(channelAssociation); final Channel channel = channelAssociation.getChannel(); channel.addCloseHandler(new CloseHandler<Channel>() { public void handleClose(final Channel closed, final IOException exception) { final boolean shuttingDown = shutdown || connectionFinished; // Unregister right away if(server.callbackUnregistered(client, shuttingDown)) { domainController.unregisterRunningServer(server.getServerName()); } } }); return server.getProxyController(); } catch (IOException e) { throw new RuntimeException(e); } }
if (server != null) { try { int blockingTimeoutValue = blockingTimeout.getProxyBlockingTimeout(server.getAddress(), server.getProxyController()); BlockingQueueOperationListener<TransactionalProtocolClient.Operation> listener = new BlockingQueueOperationListener<>(); AsyncFuture<OperationResponse> future = server.resume(listener);
if (server != null) { try { int blockingTimeoutValue = blockingTimeout.getProxyBlockingTimeout(server.getAddress(), server.getProxyController()); BlockingQueueOperationListener<TransactionalProtocolClient.Operation> listener = new BlockingQueueOperationListener<>(); AsyncFuture<OperationResponse> future = server.suspend(timeoutInSeconds, listener);
if (server != null) { try { int blockingTimeoutValue = blockingTimeout.getProxyBlockingTimeout(server.getAddress(), server.getProxyController()); BlockingQueueOperationListener<TransactionalProtocolClient.Operation> listener = new BlockingQueueOperationListener<>(); AsyncFuture<OperationResponse> future = server.suspend(timeoutInSeconds, listener);
if (server != null) { try { int blockingTimeoutValue = blockingTimeout.getProxyBlockingTimeout(server.getAddress(), server.getProxyController()); BlockingQueueOperationListener<TransactionalProtocolClient.Operation> listener = new BlockingQueueOperationListener<>(); AsyncFuture<OperationResponse> future = server.resume(listener);
@Override public void reconnectServer(final String serverName, final ModelNode domainModel, final byte[] authKey, final boolean running, final boolean stopping) { if(shutdown || connectionFinished) { throw HostControllerMessages.MESSAGES.hostAlreadyShutdown(); } ManagedServer existing = servers.get(serverName); if(existing != null) { ROOT_LOGGER.existingServerWithState(serverName, existing.getState()); return; } final ManagedServer server = createManagedServer(serverName, domainModel, authKey); if ((existing = servers.putIfAbsent(serverName, server)) != null) { ROOT_LOGGER.existingServerWithState(serverName, existing.getState()); return; } if(running) { if(!stopping) { server.reconnectServerProcess(); // Register the server proxy at the domain controller domainController.registerRunningServer(server.getProxyController()); } else { server.setServerProcessStopping(); } } else { server.removeServerProcess(); } synchronized (shutdownCondition) { shutdownCondition.notifyAll(); } }