@SuppressWarnings("ConstantConditions") @Override public void handleReturnValue(Object returnValue, MethodParameter returnType, Message<?> message) throws Exception { Assert.state(this.messageTemplate != null, "A messageTemplate must be set to handle the return value."); if (returnValue != null) { if (getDestinationName(returnType) != null) { this.messageTemplate.convertAndSend(getDestinationName(returnType), returnValue); } else { this.messageTemplate.convertAndSend(returnValue); } } }
public QueueMessageHandler createQueueMessageHandler() { QueueMessageHandler queueMessageHandler = new QueueMessageHandler( CollectionUtils.isEmpty(this.messageConverters) ? Arrays.asList(getDefaultMappingJackson2MessageConverter()) : this.messageConverters ); if (!CollectionUtils.isEmpty(this.argumentResolvers)) { queueMessageHandler.getCustomArgumentResolvers().addAll(this.argumentResolvers); } if (!CollectionUtils.isEmpty(this.returnValueHandlers)) { queueMessageHandler.getCustomReturnValueHandlers().addAll(this.returnValueHandlers); } SendToHandlerMethodReturnValueHandler sendToHandlerMethodReturnValueHandler; if (this.sendToMessagingTemplate != null) { sendToHandlerMethodReturnValueHandler = new SendToHandlerMethodReturnValueHandler(this.sendToMessagingTemplate); } else { sendToHandlerMethodReturnValueHandler = new SendToHandlerMethodReturnValueHandler( getDefaultSendToQueueMessagingTemplate(this.amazonSqs, this.resourceIdResolver)); } sendToHandlerMethodReturnValueHandler.setBeanFactory(this.beanFactory); queueMessageHandler.getCustomReturnValueHandlers().add(sendToHandlerMethodReturnValueHandler); return queueMessageHandler; }
private String getDestinationName(MethodParameter returnType) { String[] destination = returnType.getMethodAnnotation(SendTo.class).value(); return destination.length > 0 ? resolveName(destination[0]) : null; }
public QueueMessageHandler createQueueMessageHandler() { QueueMessageHandler queueMessageHandler = new QueueMessageHandler( CollectionUtils.isEmpty(this.messageConverters) ? Arrays.asList(getDefaultMappingJackson2MessageConverter()) : this.messageConverters ); if (!CollectionUtils.isEmpty(this.argumentResolvers)) { queueMessageHandler.getCustomArgumentResolvers().addAll(this.argumentResolvers); } if (!CollectionUtils.isEmpty(this.returnValueHandlers)) { queueMessageHandler.getCustomReturnValueHandlers().addAll(this.returnValueHandlers); } SendToHandlerMethodReturnValueHandler sendToHandlerMethodReturnValueHandler; if (this.sendToMessagingTemplate != null) { sendToHandlerMethodReturnValueHandler = new SendToHandlerMethodReturnValueHandler(this.sendToMessagingTemplate); } else { sendToHandlerMethodReturnValueHandler = new SendToHandlerMethodReturnValueHandler( getDefaultSendToQueueMessagingTemplate(this.amazonSqs, this.resourceIdResolver)); } sendToHandlerMethodReturnValueHandler.setBeanFactory(this.beanFactory); queueMessageHandler.getCustomReturnValueHandlers().add(sendToHandlerMethodReturnValueHandler); return queueMessageHandler; }
private String getDestinationName(MethodParameter returnType) { String[] destination = returnType.getMethodAnnotation(SendTo.class).value(); return destination.length > 0 ? resolveName(destination[0]) : null; }
@SuppressWarnings("ConstantConditions") @Override public void handleReturnValue(Object returnValue, MethodParameter returnType, Message<?> message) throws Exception { Assert.state(this.messageTemplate != null, "A messageTemplate must be set to handle the return value."); if (returnValue != null) { if (getDestinationName(returnType) != null) { this.messageTemplate.convertAndSend(getDestinationName(returnType), returnValue); } else { this.messageTemplate.convertAndSend(returnValue); } } }