@Bean MessageListenerAdapter listenerAdapter(Receiver receiver) { return new MessageListenerAdapter(receiver, "receiveMessage"); }
@Override public void setMessageConverter(MessageConverter messageConverter) { super.setMessageConverter(messageConverter); this.messagingMessageConverter.setPayloadConverter(messageConverter); }
/** * Create a new {@link MessageListenerAdapter} for the given delegate. * @param delegate the delegate object * @param messageConverter the message converter to use */ public MessageListenerAdapter(Object delegate, MessageConverter messageConverter) { doSetDelegate(delegate); super.setMessageConverter(messageConverter); }
protected void doHandleResult(InvocationResult resultArg, Message request, Channel channel, Object source) { if (this.logger.isDebugEnabled()) { this.logger.debug("Listener method returned result [" + resultArg + "] - generating response message for it"); } try { Message response = buildMessage(channel, resultArg.getReturnValue(), resultArg.getReturnType()); postProcessResponse(request, response); Address replyTo = getReplyToAddress(request, source, resultArg); sendResponse(channel, replyTo, response); } catch (Exception ex) { throw new ReplyFailureException("Failed to send reply with payload '" + resultArg + "'", ex); } }
protected MessagingMessageListenerAdapter createMultiInstance(Method m1, Method m2, boolean returnExceptions) { MessagingMessageListenerAdapter adapter = new MessagingMessageListenerAdapter(null, null, returnExceptions, null); List<InvocableHandlerMethod> methods = new ArrayList<>(); methods.add(this.factory.createInvocableHandlerMethod(sample, m1)); methods.add(this.factory.createInvocableHandlerMethod(sample, m2)); DelegatingInvocableHandler handler = new DelegatingInvocableHandler(methods, this.sample, null, null); adapter.setHandlerAdapter(new HandlerAdapter(handler)); return adapter; }
protected MessagingMessageListenerAdapter createInstance(Method m, boolean returnExceptions) { MessagingMessageListenerAdapter adapter = new MessagingMessageListenerAdapter(null, m, returnExceptions, null); adapter.setHandlerAdapter(new HandlerAdapter(factory.createInvocableHandlerMethod(sample, m))); return adapter; }
private String createMessagingErrorMessage(String description, Object payload) { return description + "\n" + "Endpoint handler details:\n" + "Method [" + this.handlerAdapter.getMethodAsString(payload) + "]\n" + "Bean [" + this.handlerAdapter.getBean() + "]"; }
/** * Create an empty {@link MessagingMessageListenerAdapter} instance. * @return the {@link MessagingMessageListenerAdapter} instance. */ protected MessagingMessageListenerAdapter createMessageListenerInstance() { return new MessagingMessageListenerAdapter(this.bean, this.method, this.returnExceptions, this.errorHandler); }
/** * Set a target object to delegate message listening to. Specified listener methods have to be present on this * target object. * <p> If no explicit delegate object has been specified, listener methods are expected to present on this adapter * instance, that is, on a custom subclass of this adapter, defining listener methods. * @param delegate The delegate listener or POJO. */ public void setDelegate(Object delegate) { doSetDelegate(delegate); }
public MessagingMessageListenerAdapter(Object bean, Method method, boolean returnExceptions, RabbitListenerErrorHandler errorHandler) { this.messagingMessageConverter = new MessagingMessageConverterAdapter(bean, method); this.returnExceptions = returnExceptions; this.errorHandler = errorHandler; }
/** * Handle the given result object returned from the listener method, sending a * response message back. * @param resultArg the result object to handle (never <code>null</code>) * @param request the original request message * @param channel the Rabbit channel to operate on (may be <code>null</code>) * @see #buildMessage * @see #postProcessResponse * @see #getReplyToAddress(Message, Object, InvocationResult) * @see #sendResponse */ protected void handleResult(InvocationResult resultArg, Message request, Channel channel) { handleResult(resultArg, request, channel, null); }
@Bean MessageListenerAdapter listenerAdapter(Receiver receiver) { return new MessageListenerAdapter(receiver, "receiveMessage"); } }
@Override public void setMessageConverter(MessageConverter messageConverter) { super.setMessageConverter(messageConverter); this.messagingMessageConverter.setPayloadConverter(messageConverter); }
/** * Create a new {@link MessageListenerAdapter} for the given delegate. * @param delegate the delegate object * @param messageConverter the message converter to use */ public MessageListenerAdapter(Object delegate, MessageConverter messageConverter) { doSetDelegate(delegate); super.setMessageConverter(messageConverter); }
private String createMessagingErrorMessage(String description, Object payload) { return description + "\n" + "Endpoint handler details:\n" + "Method [" + this.handlerAdapter.getMethodAsString(payload) + "]\n" + "Bean [" + this.handlerAdapter.getBean() + "]"; }
/** * Create an empty {@link MessagingMessageListenerAdapter} instance. * @return the {@link MessagingMessageListenerAdapter} instance. */ protected MessagingMessageListenerAdapter createMessageListenerInstance() { return new MessagingMessageListenerAdapter(this.bean, this.method, this.returnExceptions, this.errorHandler); }
/** * Create a new {@link MessageListenerAdapter} for the given delegate. * @param delegate the delegate object */ public MessageListenerAdapter(Object delegate) { doSetDelegate(delegate); }
public MessagingMessageListenerAdapter(Object bean, Method method, boolean returnExceptions, RabbitListenerErrorHandler errorHandler) { this.messagingMessageConverter = new MessagingMessageConverterAdapter(bean, method); this.returnExceptions = returnExceptions; this.errorHandler = errorHandler; }
/** * Create a new {@link MessageListenerAdapter} for the given delegate. * @param delegate the delegate object */ public MessageListenerAdapter(Object delegate) { doSetDelegate(delegate); }
/** * Set a target object to delegate message listening to. Specified listener methods have to be present on this * target object. * <p> If no explicit delegate object has been specified, listener methods are expected to present on this adapter * instance, that is, on a custom subclass of this adapter, defining listener methods. * @param delegate The delegate listener or POJO. */ public void setDelegate(Object delegate) { doSetDelegate(delegate); }