You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2011/08/19 17:23:27 UTC
[jira] [Assigned] (CAMEL-4354) header added using an EventNotifier
is not present at AggregationStrategy for http endpoints
[ https://issues.apache.org/jira/browse/CAMEL-4354?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen reassigned CAMEL-4354:
----------------------------------
Assignee: Claus Ibsen
> header added using an EventNotifier is not present at AggregationStrategy for http endpoints
> --------------------------------------------------------------------------------------------
>
> Key: CAMEL-4354
> URL: https://issues.apache.org/jira/browse/CAMEL-4354
> Project: Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 2.8.0
> Environment: linux/windows
> Reporter: Marco Crivellaro
> Assignee: Claus Ibsen
>
> A new header added using an EventNotifier is not present when the exchange is aggregated with an AggregationStrategy.
> This is happening only if the enpoint type is http, ftp doesn't have this issue.
> This was working with an early version of 2.8.0-SNAPSHOT
> Following the EventNotifier code used.
> {code:title=ExchangeSentEventNotifier.java|borderStyle=solid}
> public class ExchangeSentEventNotifier extends EventNotifierSupport {
> @Override
> protected void doStart() throws Exception {
> /*
> * filter out unwanted events
> * we are interested only in ExchangeSentEvent
> */
> setIgnoreCamelContextEvents(true);
> setIgnoreServiceEvents(true);
> setIgnoreRouteEvents(true);
> setIgnoreExchangeCreatedEvent(true);
> setIgnoreExchangeCompletedEvent(true);
> setIgnoreExchangeFailedEvents(true);
> setIgnoreExchangeSentEvents(false);
> }
> @Override
> protected void doStop() throws Exception {
> }
> @Override
> public boolean isEnabled(EventObject event) {
> return event instanceof ExchangeSentEvent;
> }
> @Override
> public void notify(EventObject event) throws Exception {
> if(event.getClass() == ExchangeSentEvent.class){
> ExchangeSentEvent eventSent = (ExchangeSentEvent)event;
>
> log.debug("Took " + eventSent.getTimeTaken() + " millis to send to: " + eventSent.getEndpoint());
> //storing time taken to the custom header
> eventSent.getExchange().getIn().setHeader("x-time-taken", eventSent.getTimeTaken());
>
> }
>
> }
> }
> {code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira