public JdrRunner(CLI cli, String protocol, String host, int port, String user, String pass) { this.env.setServerRunning(false); this.env.setUsername(user); this.env.setPassword(pass); this.env.setHost(cli.getCommandContext().getControllerHost()); this.env.setPort("" + cli.getCommandContext().getControllerPort()); this.env.setCli(cli); try { ctx = CommandContextFactory.getInstance().newCommandContext(constructUri(protocol, host, port), user, pass == null ? new char[0] : pass.toCharArray()); ctx.connectController(); this.env.setClient(ctx.getModelControllerClient()); } catch (Exception e) { ctx.terminateSession(); // the server isn't available, carry on } }
private String obtainServerUUID() throws OperationFailedException { try { ModelNode operation = Operations.createReadAttributeOperation(new ModelNode().setEmptyList(), UUID); operation.get(INCLUDE_RUNTIME).set(true); ModelControllerClient client = env.getClient(); if (client == null) { client = env.getCli().getCommandContext().getModelControllerClient(); } ModelNode result = client.execute(operation); if (Operations.isSuccessfulOutcome(result)) { return Operations.readResult(result).asString(); } return null; } catch (IOException ex) { return null; } }
CLI cli = CLI.newInstance(); boolean embedded = false; JdrReport report = null; try { System.out.println(String.format("Trying to connect to %s %s:%s", protocol, host, port)); cli.connect(protocol, host, port, null, null); } catch (IllegalStateException ex) { System.out.println("Starting embedded server"); String startEmbeddedServer = "embed-server --std-out=echo " + ((config != null && ! config.isEmpty()) ? (" --server-config=" + config) : ""); cli.getCommandContext().handleSafe(startEmbeddedServer); embedded = true; Result cmdResult = cli.cmd("/subsystem=jdr:generate-jdr-report()"); ModelNode response = cmdResult.getResponse(); if(Operations.isSuccessfulOutcome(response) || !embedded) { reportFailure(response); try { if(embedded) cli.getCommandContext().handleSafe("stop-embedded-server"); else cli.disconnect(); } catch(Exception e) { System.out.println("Caught exception while disconnecting: " + e.getMessage());
private static CommandContext initCommandContext(CommandContextConfiguration ctxConfig, boolean connect) throws CliInitializationException { final CommandContext cmdCtx = CommandContextFactory.getInstance().newCommandContext(ctxConfig); if(connect) { try { cmdCtx.connectController(); } catch (CommandLineException e) { throw new CliInitializationException("Failed to connect to the controller", e); } } return cmdCtx; }
@Override public List<String> getAllCandidates(CommandContext ctx) { return Util.getNodeNames(ctx.getModelControllerClient(), null, Util.PROFILE); }}), "--profile") { @Override
@Override protected Collection<String> getAllCandidates(CommandContext ctx) { return Util.getServerGroups(ctx.getModelControllerClient()); }} , "--server-groups") { @Override
public boolean isValidPath(String... node) { try { return Util.isValidPath(ctx.getModelControllerClient(), node); } catch (CommandLineException e) { Assert.fail("Failed to validate path: " + e.getLocalizedMessage()); return false; } }
@Override public List<String> getNodeTypes(CommandContext ctx, OperationRequestAddress prefix) { return Util.getNodeTypes(ctx.getModelControllerClient(), prefix); }
private static void printHistory(CommandContext ctx) { CommandHistory history = ctx.getHistory(); List<String> list = history.asList(); for(String cmd : list) { ctx.printLine(cmd); } ctx.printLine("(The history is currently " + (history.isUseHistory() ? "enabled)" : "disabled)")); } }
ctx.terminateSession(); } catch (Exception e) {
public ControllerAddress resolveAddress(final String controller) throws CommandLineException { ControllerAddress intermediate; if (controller != null) { intermediate = convert(controller); } else if (defaultController != null) { intermediate = convert(defaultController); } else { intermediate = config.getDefaultControllerAddress(); } return finish(intermediate); }
private static CommandContext initCommandContext(CommandContextConfiguration ctxConfig, boolean connect) throws CliInitializationException { final CommandContext cmdCtx = CommandContextFactory.getInstance().newCommandContext(ctxConfig); if(connect) { try { cmdCtx.connectController(); } catch (CommandLineException e) { throw new CliInitializationException("Failed to connect to the controller", e); } } return cmdCtx; }
@Override public List<String> getAllCandidates(CommandContext ctx) { return Util.getNodeNames(ctx.getModelControllerClient(), null, Util.PROFILE); }}), "--profile") { @Override
private String obtainProductName() { try { ModelNode operation = Operations.createReadAttributeOperation(new ModelNode().setEmptyList(), PRODUCT_NAME); operation.get(INCLUDE_RUNTIME).set(false); ModelControllerClient client = env.getClient(); if (client == null) { client = env.getCli().getCommandContext().getModelControllerClient(); } ModelNode result = client.execute(operation); if (Operations.isSuccessfulOutcome(result)) { return Operations.readResult(result).asString(); } return "undefined"; } catch (IOException e) { // This should not be needed since a product name is always returned, even if it doesn't exist. // In that case "undefined" is returned return "undefined"; } }
@Override protected Collection<String> getAllCandidates(CommandContext ctx) { return Util.getServerGroups(ctx.getModelControllerClient()); }} , "--server-groups") { @Override
private static void printHistory(CommandContext ctx) { CommandHistory history = ctx.getHistory(); List<String> list = history.asList(); for(String cmd : list) { ctx.printLine(cmd); } ctx.printLine("(The history is currently " + (history.isUseHistory() ? "enabled)" : "disabled)")); } }
public ControllerAddress resolveAddress(final String controller) throws CommandLineException { ControllerAddress intermediate; if (controller != null) { intermediate = convert(controller); } else if (defaultController != null) { intermediate = convert(defaultController); } else { intermediate = config.getDefaultControllerAddress(); } return finish(intermediate); }
@Override public List<String> getAllCandidates(CommandContext ctx) { return Util.getNodeNames(ctx.getModelControllerClient(), null, Util.PROFILE); }}), "--profile") { @Override
private String obtainProductVersion() { try { ModelNode operation = Operations.createReadAttributeOperation(new ModelNode().setEmptyList(), PRODUCT_VERSION); operation.get(INCLUDE_RUNTIME).set(false); ModelControllerClient client = env.getClient(); if (client == null) { client = env.getCli().getCommandContext().getModelControllerClient(); } ModelNode result = client.execute(operation); if (Operations.isSuccessfulOutcome(result)) { return Operations.readResult(result).asString(); } return "undefined"; } catch (IOException e) { // This should not be needed since a product version is always returned, even if it doesn't exist. // In that case "undefined" is returned return "undefined"; } } }
@Override public List<String> getAllCandidates(CommandContext ctx) { return Util.getNodeNames(ctx.getModelControllerClient(), null, Util.PROFILE); }}), "--profile") { @Override