@Override public void onException(Message message, Exception exception) { try { delegate.onException(message, exception); span.error(exception); } finally { span.finish(); } } }
@Override public void onException(Message message, Exception exception) { context.getThreadAwareContext().setCurrentThread(true); try { wrapped.onException(message, exception); } finally { context.getThreadAwareContext().clearCurrentThread(true); } } }
@Override public void onException(final JMSException exception) { completionListener.onException(message, exception); } }
@Override public void onFailure(final Throwable thrown) { LOGGER.log(Level.SEVERE, "Message sending error:", thrown); if (null != completionListener) { completionListener.onException(message, (Exception) thrown); } } });
/** * Notifies user that the specified exception was thrown while attempting to * send the specified message. If an exception occurs it is undefined * whether or not the message was successfully sent. * * @param exception the exception * */ void onException(final Exception exception) { if (logger.isLoggable(BasicLevel.DEBUG)) logger.log(BasicLevel.DEBUG, "onException(" + exception + ')'); for (int i = 0; i < listeners.size(); i++) { listeners.get(i).onException(messages.get(i), exception); // new Thread() { // public void run() { // listener.onException(message, exception); // } // }.start(); } }
@Override public void onException(Message message, Exception exception) { context.getThreadAwareContext().setCurrentThread(true); try { wrapped.onException(message, exception); } finally { context.getThreadAwareContext().clearCurrentThread(true); } } }
@Override public void onException(Message message, Exception exception) { context.getThreadAwareContext().setCurrentThread(true); try { wrapped.onException(message, exception); } finally { context.getThreadAwareContext().clearCurrentThread(true); } } }
@Override public void onException(Message message, Exception exception) { context.getThreadAwareContext().setCurrentThread(true); try { wrapped.onException(message, exception); } finally { context.getThreadAwareContext().clearCurrentThread(true); } } }
@Override public void onException(Message message, Exception exception) { context.getThreadAwareContext().setCurrentThread(true); try { wrapped.onException(message, exception); } finally { context.getThreadAwareContext().clearCurrentThread(true); } } }
@Test public void shouldReturnFalseWhenOnExceptionCalledOnListener() throws Exception { // when CompletableFuture<MessageSendingResult> future = messageSender.send(SOME_MESSAGE); // then ArgumentCaptor<CompletionListener> listenerCaptor = ArgumentCaptor.forClass(CompletionListener.class); verify(jmsProducerMock).setAsync(listenerCaptor.capture()); listenerCaptor.getValue().onException(messageMock, new RuntimeException()); assertFalse(future.get(1, TimeUnit.SECONDS).succeeded()); }
public void signalCompletion() { envelope.getMessage().onSendComplete(); // Ensure message is returned as readable. if (failureCause == null) { listener.onCompletion(envelope.getMessage()); } else { listener.onException(envelope.getMessage(), failureCause); } }
public void signalCompletion() { envelope.getMessage().onSendComplete(); // Ensure message is returned as readable. if (failureCause == null) { listener.onCompletion(envelope.getMessage()); } else { listener.onException(envelope.getMessage(), failureCause); } }
exception = JMSExceptionHelper.convertFromActiveMQException((ActiveMQInterruptedException) exception); completionListener.onException(jmsMessage, exception); } finally { producer.connection.getThreadAwareContext().clearCurrentThread(true);
exception = JMSExceptionHelper.convertFromActiveMQException((ActiveMQInterruptedException) exception); completionListener.onException(jmsMessage, exception); } finally { producer.connection.getThreadAwareContext().clearCurrentThread(true);