@Override public void stopLocalHost() { final ProcessControllerClient client = injectedProcessControllerConnection.getValue().getClient(); try { client.shutdown(); } catch (IOException e) { throw new RuntimeException("Error closing down host", e); } }
@Override public void stopLocalHost(int exitCode) { final ProcessControllerClient client = injectedProcessControllerConnection.getValue().getClient(); processState.setStopping(); try { client.shutdown(exitCode); } catch (IOException e) { throw MESSAGES.errorClosingDownHost(e); } }
synchronized void kill() { final InternalState required = this.requiredState; if (required == InternalState.STOPPED) { if (internalState != InternalState.STOPPED) { try { processControllerClient.killProcess(serverProcessName); } catch (IOException e) { ROOT_LOGGER.logf(DEBUG_LEVEL, e, "failed to send kill_process message to %s", serverName); } } } else { stop(-1, 0); } }
@Override public synchronized Map<String, ProcessInfo> determineRunningProcesses() { processInventoryLatch = new CountDownLatch(1); try { processControllerClient.requestProcessInventory(); } catch (IOException e) { throw new RuntimeException(e); } try { if (!processInventoryLatch.await(30, TimeUnit.SECONDS)) { throw MESSAGES.couldNotGetServerInventory( 30L, TimeUnit.SECONDS.toString().toLowerCase(Locale.US)); } } catch (InterruptedException e) { throw MESSAGES.couldNotGetServerInventory( 30L, TimeUnit.SECONDS.toString().toLowerCase(Locale.US)); } return processInfos; }