private OperationResponseImpl(ModelNode simpleResponse, Map<String, StreamEntry> inputStreams) { this.simpleResponse = simpleResponse; this.inputStreams = inputStreams; // TODO doing this here isn't so nice ModelNode header = simpleResponse.get(RESPONSE_HEADERS, ATTACHED_STREAMS); header.setEmptyList(); for (StreamEntry entry : inputStreams.values()) { ModelNode streamNode = new ModelNode(); streamNode.get(UUID).set(entry.getUUID()); streamNode.get(MIME_TYPE).set(entry.getMimeType()); header.add(streamNode); } }
private OperationResponseImpl(ModelNode simpleResponse, Map<String, StreamEntry> inputStreams) { this.simpleResponse = simpleResponse; this.inputStreams = inputStreams; // TODO doing this here isn't so nice ModelNode header = simpleResponse.get(RESPONSE_HEADERS, ATTACHED_STREAMS); header.setEmptyList(); for (StreamEntry entry : inputStreams.values()) { ModelNode streamNode = new ModelNode(); streamNode.get(UUID).set(entry.getUUID()); streamNode.get(MIME_TYPE).set(entry.getMimeType()); header.add(streamNode); } }
private Set<String> listStreams(OperationResponse operationResponse) { List<StreamEntry> streams = operationResponse.getInputStreams(); Set<String> uuids = new HashSet<>(streams.size()); for (StreamEntry stream : streams) { uuids.add(stream.getUUID()); } return uuids; }
/** * Deal with streams attached to an operation response from a proxied domain process. * * @param context the context of the operation * @param responseNode the DMR response from the proxied process * @param streams the streams associated with the response */ public static void handleDomainOperationResponseStreams(final OperationContext context, final ModelNode responseNode, final List<OperationResponse.StreamEntry> streams) { if (responseNode.hasDefined(RESPONSE_HEADERS)) { ModelNode responseHeaders = responseNode.get(RESPONSE_HEADERS); // Strip out any stream header as the header created by this process is what counts responseHeaders.remove(ATTACHED_STREAMS); if (responseHeaders.asInt() == 0) { responseNode.remove(RESPONSE_HEADERS); } } for (OperationResponse.StreamEntry streamEntry : streams) { context.attachResultStream(streamEntry.getUUID(), streamEntry.getMimeType(), streamEntry.getStream()); } }
/** * Deal with streams attached to an operation response from a proxied domain process. * * @param context the context of the operation * @param responseNode the DMR response from the proxied process * @param streams the streams associated with the response */ public static void handleDomainOperationResponseStreams(final OperationContext context, final ModelNode responseNode, final List<OperationResponse.StreamEntry> streams) { if (responseNode.hasDefined(RESPONSE_HEADERS)) { ModelNode responseHeaders = responseNode.get(RESPONSE_HEADERS); // Strip out any stream header as the header created by this process is what counts responseHeaders.remove(ATTACHED_STREAMS); if (responseHeaders.asInt() == 0) { responseNode.remove(RESPONSE_HEADERS); } } for (OperationResponse.StreamEntry streamEntry : streams) { context.attachResultStream(streamEntry.getUUID(), streamEntry.getMimeType(), streamEntry.getStream()); } }
private Set<String> listStreams(OperationResponse operationResponse) { List<StreamEntry> streams = operationResponse.getInputStreams(); Set<String> uuids = new HashSet<>(streams.size()); for (StreamEntry stream : streams) { uuids.add(stream.getUUID()); } return uuids; }