camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <claus.ib...@gmail.com>
Subject Re: Get The intercepted endpoint when using inetrcept()
Date Tue, 19 May 2009 15:41:38 GMT
Hi

Okay I think you are using file endpoints. I have found the bug and
will commit a fix later.


On Tue, May 19, 2009 at 5:33 PM, Claus Ibsen <claus.ibsen@gmail.com> wrote:
> Hi
>
> What is the URI of the source and the target?
>
> I have created an unit test and it works using direct and mock
> endpoints. So I want to know if it can be an issue if you use other
> kind of endpoints.
>
>
> On Tue, May 19, 2009 at 2:33 PM, Claus Ibsen <claus.ibsen@gmail.com> wrote:
>> On Tue, May 19, 2009 at 1:36 PM, CHAHINE MALEK <MALEK.CHAHINE@bull.net> wrote:
>>> Hi
>>>
>>> I used the interceptSendToEndpoint(), and I am able to get the destination
>>> endpoint by using Exchange.INTERCEPTED_ENDPOINT, but I need also to get the
>>> sender endpoint, I tried to get it by  exchange.getFromEndpoint(),  it
>>> returns always null.
>>>
>>> Do you have an idea how can i get the sender endpoint ?
>>>
>>> I'm using the following code:
>>>
>>> this.interceptSendToEndpoint(target.toURI().toString()).process(new
>>> InterceptorProcessor());
>>>
>>> this.from(source.toURI().toString()).setHeader(Exchange.FILE_NAME,
>>> this.constant("report.txt")).to(
>>>                           target.toURI().toString());
>>>
>>>
>>> public void process(final Exchange exchange) throws Exception {
>>>       System.out.println("\t From Endpoint: " + exchange.getFromEndpoint());
>>>       System.out.println("\t To Endpoint: " +
>>> exchange.getIn().getHeader(Exchange.INTERCEPTED_ENDPOINT));
>>>       System.out.println("\t Intercepted File: " +
>>> exchange.getIn().getHeader("CamelFileNameOnly"));
>>>   }
>>>
>>> Thanks
>>>
>>> Malek
>> Hi Marek
>>
>> Can you create a JIRA ticket for this.
>> Then I wont forget to look into it.
>>
>> I have a few other things to attend but then I will take a look.
>>
>>
>>>
>>>
>>> Claus Ibsen a écrit :
>>>>
>>>> On Thu, May 14, 2009 at 6:20 PM, CHAHINE MALEK <MALEK.CHAHINE@bull.net>
>>>> wrote:
>>>>
>>>>>
>>>>> Hi,
>>>>>
>>>>> I use camel 2.0 in my project, and I need to intercept all exchanges
>>>>> while
>>>>> they are on route.
>>>>>
>>>>> For each intercepted exchange I need to log his message body and the
>>>>> intercepted Endpoint.
>>>>>
>>>>> I can get the intercepted Endpoint in the message header
>>>>> Exchange.INTERCEPTED_ENDPOINT, when I used interceptSendToEndpoint.
>>>>>
>>>>> But if  i use the intercept(),  i don't find the intercepted Endpoint
in
>>>>> the
>>>>> message header Exchange.INTERCEPTED_ENDPOINT.
>>>>>
>>>>> In my case I need to intercept all exchanges while they are on route,
so
>>>>> I
>>>>> need to use intercept().
>>>>> How can I get the intercepted Endpoint when using inetrcept() ?
>>>>>
>>>>
>>>> Hi
>>>>
>>>> While an Exchange is being routed in Camel it passes through a graph
>>>> of processors. These processors are not all endpoints, so while you
>>>> intercept() its not all endpoints, for instance a delay() is a just a
>>>> processor that delays the message.
>>>>
>>>> INTERCEPTED_ENDPOINT is used by the interceptSendToEndpoint, eg when
>>>> clearly you are *about* to send an Exchange to an Endpoint. So why its
>>>> there.
>>>> The same applies for interceptFrom() as it intercept any *incoming*
>>>> exchange coming in from an input Endpoint.
>>>>
>>>> So the intercept() has no notion of endpoint as it intercepts each and
>>>> evert step the Exchange take is the route graph. You can however get
>>>> the incoming endpoint, eg where it was constructed, by
>>>> exchange.getFromEndpoin(). This might be the endpoint you are looking
>>>> for.
>>>>
>>>>
>>>>
>>>>>
>>>>> Thank u
>>>>> Malek
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>>
>> --
>> Claus Ibsen
>> Apache Camel Committer
>>
>> Open Source Integration: http://fusesource.com
>> Blog: http://davsclaus.blogspot.com/
>> Twitter: http://twitter.com/davsclaus
>>
>
>
>
> --
> Claus Ibsen
> Apache Camel Committer
>
> Open Source Integration: http://fusesource.com
> Blog: http://davsclaus.blogspot.com/
> Twitter: http://twitter.com/davsclaus
>



-- 
Claus Ibsen
Apache Camel Committer

Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus

Mime
View raw message