@Override public ModelNode execute(ModelNode mn, String description) throws CommandLineException, IOException { OperationBuilder opBuilder = new OperationBuilder(mn, true); return execute(opBuilder.build(), description); }
@Override public byte[] addDeploymentContent(InputStream stream) { ModelNode op = new ModelNode(); op.get("operation").set("upload-deployment-stream"); op.get("input-stream-index").set(0); Operation operation = new OperationBuilder(op).addInputStream(stream).build(); ModelNode result = executeForResult(operation); return result.asBytes(); }
@Override protected ModelNode applyPatch(final File file, final ContentPolicyBuilderImpl policyBuilder) throws PatchingException { final ModelNode operation = createOperation(Constants.PATCH, address.toModelNode(), policyBuilder); operation.get(INPUT_STREAM_INDEX).set(0); final OperationBuilder operationBuilder = OperationBuilder.create(operation); operationBuilder.addFileAsAttachment(file); return executeOp(operationBuilder.build()); }
public static Operation getOperation(List<ModelNode> extensions) { final List<ModelNode> bootOperations = new ArrayList<ModelNode>(); for (final ModelNode extension : extensions) { final ModelNode e = new ModelNode(); e.get("domain-resource-address").add(EXTENSION, extension.asString()); bootOperations.add(e); } final ModelNode operation = APPLY_EXTENSIONS.clone(); operation.get(DOMAIN_MODEL).set(bootOperations); return OperationBuilder.create(operation).build(); }
@Override protected ModelNode execute(CommandContext ctx, ModelNode request) throws IOException { ModelNode result; if (!unmanaged) { OperationBuilder op = new OperationBuilder(request); op.addFileAsAttachment(file); request.get(Util.CONTENT).get(0).get(Util.INPUT_STREAM_INDEX).set(0); try (Operation operation = op.build()) { result = ctx.getModelControllerClient().execute(operation); } } else { result = ctx.getModelControllerClient().execute(request); } return result; } }
OperationBuilder builder = new OperationBuilder(op); if (action.getNewContentFileName() != null && action.getContentStream() != null) { step.get(RUNTIME_NAME).set(action.getNewContentFileName()); builder.addInputStream(action.getContentStream()); step.get(CONTENT).get(0).get(INPUT_STREAM_INDEX).set(stream++); } else if (action.getContents() != null && !action.getContents().isEmpty()) { for (Entry<String, InputStream> content : action.getContents().entrySet()) { step.get(RUNTIME_NAME).set(content.getKey()); builder.addInputStream(content.getValue()); step.get(CONTENT).get(index).get(INPUT_STREAM_INDEX).set(stream++); index++; for (Entry<String, Path> fileEntry : action.getFiles().entrySet()) { step.get(RUNTIME_NAME).set(fileEntry.getKey()); builder.addFileAsAttachment(fileEntry.getValue()); step.get(CONTENT).get(index).get(INPUT_STREAM_INDEX).set(stream++); index++; step.get(NAME).set(uniqueName); step.get(RUNTIME_NAME).set(action.getNewContentFileName()); builder.addInputStream(action.getContentStream()); step.get(CONTENT).get(0).get(INPUT_STREAM_INDEX).set(stream++); break; int i = 0; for (Entry<String, InputStream> content : action.getContents().entrySet()) { builder.addInputStream(content.getValue());
/** * Execute an operation in the model controller * * @param operation the operation to execute * @param inputStreams Input Streams for the operation * @return the whole result of the operation */ @Override public ModelNode executeOperation(ModelNode operation, InputStream...inputStreams) { if (inputStreams.length == 0) { return executeOperation(operation, OperationTransactionControl.COMMIT); } else { ExecutorService executor = Executors.newCachedThreadPool(); try { ModelControllerClient client = controller.createClient(executor); OperationBuilder builder = OperationBuilder.create(operation); for (InputStream in : inputStreams) { builder.addInputStream(in); } Operation op = builder.build(); try { return client.execute(op); } catch (IOException e) { throw new RuntimeException(e); } } finally { executor.shutdownNow(); } } }
/** * Create an operation builder. * * @param operation the operation * @param autoCloseStreams whether streams should be automatically closed * @return the builder */ public static OperationBuilder create(final ModelNode operation, final boolean autoCloseStreams) { return new OperationBuilder(operation, autoCloseStreams); }
@Override void addContentToOperation(final OperationBuilder builder, final ModelNode op) { copiedContent.reset(); final ModelNode contentNode = op.get(CONTENT); final ModelNode contentItem = contentNode.get(0); // The index is 0 based so use the input stream count before adding the input stream contentItem.get(ClientConstants.INPUT_STREAM_INDEX).set(builder.getInputStreamCount()); builder.addInputStream(copiedContent); }
@Override public CompositeOperationBuilder addInputStream(final InputStream in) { super.addInputStream(in); return this; } }
@Override void addContentToOperation(final OperationBuilder builder, final ModelNode op) { final ModelNode contentNode = op.get(CONTENT); final ModelNode contentItem = contentNode.get(0); // If the content points to a directory we are deploying exploded content if (Files.isDirectory(content)) { contentItem.get(PATH).set(content.toAbsolutePath().toString()); contentItem.get("archive").set(false); } else { // The index is 0 based so use the input stream count before adding the input stream contentItem.get(ClientConstants.INPUT_STREAM_INDEX).set(builder.getInputStreamCount()); builder.addFileAsAttachment(content.toFile()); } }
@Override public CompositeOperationBuilder addFileAsAttachment(final File file) { super.addFileAsAttachment(file); return this; }
@Override protected ModelNode execute(CommandContext ctx, ModelNode request) throws IOException { ModelNode result; if (!unmanaged) { OperationBuilder op = new OperationBuilder(request); op.addFileAsAttachment(file); request.get(Util.CONTENT).get(0).get(Util.INPUT_STREAM_INDEX).set(0); try (Operation operation = op.build()) { result = ctx.getModelControllerClient().execute(operation); } } else { result = ctx.getModelControllerClient().execute(request); } return result; } }
public static Operation getOperation(List<ModelNode> extensions) { final List<ModelNode> bootOperations = new ArrayList<ModelNode>(); for (final ModelNode extension : extensions) { final ModelNode e = new ModelNode(); e.get("domain-resource-address").add(EXTENSION, extension.asString()); bootOperations.add(e); } final ModelNode operation = APPLY_EXTENSIONS.clone(); operation.get(DOMAIN_MODEL).set(bootOperations); return OperationBuilder.create(operation).build(); }
deploy.get("auto-start").set(true); final Operation o = OperationBuilder.create(deploy) .addInputStream(deployment.as(ZipExporter.class).exportAsInputStream()).build();
/** * Create an operation builder. * * @param operation the operation * @param autoCloseStreams whether streams should be automatically closed * @return the builder */ public static OperationBuilder create(final ModelNode operation, final boolean autoCloseStreams) { return new OperationBuilder(operation, autoCloseStreams); }
int index = context.getInputStreamCount(); context.addInputStream(new FileInputStream(realArchive)); ModelNode result = new ModelNode(); if (deployments.contains(archiveName)) {
@Override public CompositeOperationBuilder addInputStream(final InputStream in) { super.addInputStream(in); return this; } }
@Override public CompositeOperationBuilder addFileAsAttachment(final File file) { super.addFileAsAttachment(file); return this; }
@Override public ModelNode execute(ModelNode mn, String description) throws CommandLineException, IOException { OperationBuilder opBuilder = new OperationBuilder(mn, true); return execute(opBuilder.build(), description); }