@Override public boolean isRequired(ModelNodeResult serverStateResult, boolean isManagedServerInDomain) { if (isManagedServerInDomain) { // reloading an individual server in managed domain is not supported on AS 7, so when trying to figure // out if reload of host in domain is required, some servers on that host might actually signal // "restart required" (even if it would be "reload required" in the same situation in standalone); // this is also true even on WildFly, which supports reloading a server in domain (see WFLY-351) // // anyway, reloading a host means restarting all its servers, so returning true is fine in this case if (Constants.CONTROLLER_PROCESS_STATE_RESTART_REQUIRED.equals(serverStateResult.stringValue())) { return true; } } return Constants.CONTROLLER_PROCESS_STATE_RELOAD_REQUIRED.equals(serverStateResult.stringValue()); }
@Override public boolean isRequired(ModelNodeResult serverStateResult, boolean isManagedServerInDomain) { serverStateResult.assertDefinedValue(); return Constants.CONTROLLER_PROCESS_STATE_RESTART_REQUIRED.equals(serverStateResult.stringValue()); }
private boolean isServerRunning() throws IOException { ModelNodeResult result = ops.readAttribute(Address.root(), Constants.SERVER_STATE); result.assertDefinedValue(); return ServerState.isRunning(result.stringValue()); } }
List<String> allRunningServers(String host) throws IOException { ModelNodeResult result = ops.readChildrenNames(Address.host(host), Constants.SERVER); result.assertDefinedValue(); List<String> servers = result.stringListValue(); List<String> startedServers = new ArrayList<String>(); for (String server : servers) { ModelNodeResult serverStatus = ops.readAttribute(Address.host(host).and(Constants.SERVER_CONFIG, server), Constants.STATUS); serverStatus.assertDefinedValue(); if ("STARTED".equals(serverStatus.stringValue())) { startedServers.add(server); } } return startedServers; }
private boolean areServersRunning(String host, List<String> servers) throws IOException { Address hostAddress = Address.host(host); if (servers == null || servers.isEmpty()) { ModelNodeResult result = ops.readAttribute(Address.host(host), Constants.HOST_STATE); result.assertDefinedValue(); return ServerState.isRunning(result.stringValue()); } else { for (String server : servers) { Address serverAddress = hostAddress.and(Constants.SERVER, server); ModelNodeResult result = ops.readAttribute(serverAddress, Constants.SERVER_STATE); if (!result.hasDefinedValue() || !ServerState.isRunning(result.stringValue())) { return false; } } return true; } } }