camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marco Crivellaro (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CAMEL-4354) header added using an EventNotifier is not present at AggregationStrategy for http endpoints
Date Mon, 22 Aug 2011 07:36:29 GMT

    [ https://issues.apache.org/jira/browse/CAMEL-4354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13088555#comment-13088555
] 

Marco Crivellaro commented on CAMEL-4354:
-----------------------------------------

shall we consider a better practice using an exchange property instead of an header?

> 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
>             Fix For: 2.9.0
>
>
> 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

        

Mime
View raw message