/** * Creates a ResultMessage with the given {@code exception} result. * * @param exception the Exception describing the cause of an error * @param <T> the type of payload * @return a message containing exception result */ public static <T> ResultMessage<T> asResultMessage(Throwable exception) { return new GenericResultMessage<>(exception); }
@Override protected void setRollbackCause(Throwable cause) { processingContexts.forEach(context -> context .setExecutionResult(new ExecutionResult(new GenericResultMessage<>(cause)))); }
@Override protected void setRollbackCause(Throwable cause) { setExecutionResult(new ExecutionResult(new GenericResultMessage<>(cause))); }
/** * Returns the given {@code result} as a {@link ResultMessage} instance. If {@code result} already implements {@link * ResultMessage}, it is returned as-is. If {@code result} implements {@link Message}, payload and meta data will be * used to construct new {@link GenericResultMessage}. Otherwise, the given {@code result} is wrapped into a {@link * GenericResultMessage} as its payload. * * @param result the command result to be wrapped as {@link ResultMessage} * @param <T> The type of the payload contained in returned Message * @return a Message containing given {@code result} as payload, or {@code result} if already * implements {@link ResultMessage} */ @SuppressWarnings("unchecked") public static <T> ResultMessage<T> asResultMessage(Object result) { if (ResultMessage.class.isInstance(result)) { return (ResultMessage<T>) result; } else if (Message.class.isInstance(result)) { Message<?> resultMessage = (Message<?>) result; return new GenericResultMessage<>((T) resultMessage.getPayload(), resultMessage.getMetaData()); } return new GenericResultMessage<>((T) result); }
@Override public GenericResultMessage<R> andMetaData(Map<String, ?> metaData) { return new GenericResultMessage<>(getDelegate().andMetaData(metaData), exception); }
@Override public GenericResultMessage<R> withMetaData(Map<String, ?> metaData) { return new GenericResultMessage<>(getDelegate().withMetaData(metaData), exception); }
resultMessage = new GenericResultMessage<>(result, ((Message) result).getMetaData()); } else { resultMessage = new GenericResultMessage<>(result);
resultMessage = (ResultMessage<R>) result; } else if(result instanceof Message) { resultMessage = new GenericResultMessage<>(result, ((Message) result).getMetaData()); } else { resultMessage = new GenericResultMessage<>(result);
/** * Creates a ResultMessage with the given {@code exception} result. * * @param exception the Exception describing the cause of an error * @param <T> the type of payload * @return a message containing exception result */ public static <T> ResultMessage<T> asResultMessage(Throwable exception) { return new GenericResultMessage<>(exception); }
@Override protected void setRollbackCause(Throwable cause) { processingContexts.forEach(context -> context .setExecutionResult(new ExecutionResult(new GenericResultMessage<>(cause)))); }
@Override protected void setRollbackCause(Throwable cause) { setExecutionResult(new ExecutionResult(new GenericResultMessage<>(cause))); }
/** * Returns the given {@code result} as a {@link ResultMessage} instance. If {@code result} already implements {@link * ResultMessage}, it is returned as-is. If {@code result} implements {@link Message}, payload and meta data will be * used to construct new {@link GenericResultMessage}. Otherwise, the given {@code result} is wrapped into a {@link * GenericResultMessage} as its payload. * * @param result the command result to be wrapped as {@link ResultMessage} * @param <T> The type of the payload contained in returned Message * @return a Message containing given {@code result} as payload, or {@code result} if already * implements {@link ResultMessage} */ @SuppressWarnings("unchecked") public static <T> ResultMessage<T> asResultMessage(Object result) { if (ResultMessage.class.isInstance(result)) { return (ResultMessage<T>) result; } else if (Message.class.isInstance(result)) { Message<?> resultMessage = (Message<?>) result; return new GenericResultMessage<>((T) resultMessage.getPayload(), resultMessage.getMetaData()); } return new GenericResultMessage<>((T) result); }
@Override public GenericResultMessage<R> andMetaData(Map<String, ?> metaData) { return new GenericResultMessage<>(getDelegate().andMetaData(metaData), exception); }
@Override public GenericResultMessage<R> withMetaData(Map<String, ?> metaData) { return new GenericResultMessage<>(getDelegate().withMetaData(metaData), exception); }
resultMessage = new GenericResultMessage<>(result, ((Message) result).getMetaData()); } else { resultMessage = new GenericResultMessage<>(result);
resultMessage = (ResultMessage<R>) result; } else if(result instanceof Message) { resultMessage = new GenericResultMessage<>(result, ((Message) result).getMetaData()); } else { resultMessage = new GenericResultMessage<>(result);