@Override public boolean sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference, Subscription subscription, Throwable poisonCause) { boolean wasDLQd = super.sendToDeadLetterQueue(context, messageReference, subscription, poisonCause); if (wasDLQd) { try { if (!messageReference.isAdvisory()) { BaseDestination baseDestination = (BaseDestination) messageReference.getMessage().getRegionDestination(); ActiveMQTopic topic = AdvisorySupport.getMessageDLQdAdvisoryTopic(baseDestination.getActiveMQDestination()); Message payload = messageReference.getMessage().copy(); if (!baseDestination.isIncludeBodyForAdvisory()) { payload.clearBody(); } fireAdvisory(context, topic, payload); } } catch (Exception e) { handleFireFailure("add to DLQ", e); } } return wasDLQd; }
@Override public boolean sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference, Subscription subscription, Throwable poisonCause) { blockWhileLoadingCamelRoutes(); return super.sendToDeadLetterQueue(context, messageReference, subscription, poisonCause); }
@Override public boolean sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference, Subscription subscription, Throwable poisonCause) { blockWhileLoadingCamelRoutes(); return super.sendToDeadLetterQueue(context, messageReference, subscription, poisonCause); }
@Override public void sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference, Subscription subscription){ super.sendToDeadLetterQueue(context, messageReference, subscription); try { if(!messageReference.isAdvisory()) { ActiveMQTopic topic = AdvisorySupport.getMessageDLQdAdvisoryTopic(messageReference.getMessage().getDestination()); Message payload = messageReference.getMessage().copy(); payload.clearBody(); fireAdvisory(context, topic,payload); } } catch (Exception e) { handleFireFailure("add to DLQ", e); } }
@Override public boolean sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference, Subscription subscription, Throwable poisonCause) { boolean wasDLQd = super.sendToDeadLetterQueue(context, messageReference, subscription, poisonCause); if (wasDLQd) { try { if (!messageReference.isAdvisory()) { BaseDestination baseDestination = (BaseDestination) messageReference.getMessage().getRegionDestination(); ActiveMQTopic topic = AdvisorySupport.getMessageDLQdAdvisoryTopic(baseDestination.getActiveMQDestination()); Message payload = messageReference.getMessage().copy(); if (!baseDestination.isIncludeBodyForAdvisory()) { payload.clearBody(); } fireAdvisory(context, topic, payload); } } catch (Exception e) { handleFireFailure("add to DLQ", e); } } return wasDLQd; }
@Override public boolean sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference, Subscription subscription, Throwable poisonCause) { boolean wasDLQd = super.sendToDeadLetterQueue(context, messageReference, subscription, poisonCause); if (wasDLQd) { try { if (!messageReference.isAdvisory()) { BaseDestination baseDestination = (BaseDestination) messageReference.getMessage().getRegionDestination(); ActiveMQTopic topic = AdvisorySupport.getMessageDLQdAdvisoryTopic(baseDestination.getActiveMQDestination()); Message payload = messageReference.getMessage().copy(); if (!baseDestination.isIncludeBodyForAdvisory()) { payload.clearBody(); } fireAdvisory(context, topic, payload); } } catch (Exception e) { handleFireFailure("add to DLQ", e); } } return wasDLQd; }
@Override public boolean sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference, Subscription subscription, Throwable poisonCause) { boolean wasDLQd = super.sendToDeadLetterQueue(context, messageReference, subscription, poisonCause); if (wasDLQd) { try { if (!messageReference.isAdvisory()) { BaseDestination baseDestination = (BaseDestination) messageReference.getMessage().getRegionDestination(); ActiveMQTopic topic = AdvisorySupport.getMessageDLQdAdvisoryTopic(baseDestination.getActiveMQDestination()); Message payload = messageReference.getMessage().copy(); if (!baseDestination.isIncludeBodyForAdvisory()) { payload.clearBody(); } fireAdvisory(context, topic, payload); } } catch (Exception e) { handleFireFailure("add to DLQ", e); } } return wasDLQd; }