How to set client or clientFactory in the FhirConfiguration object?

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

How to set client or clientFactory in the FhirConfiguration object?

Paw B Sørensen
The camel fhir component supports setting several query parameters. In the implementation of FhirConfiguration all of these parameters are annotated with @UriParam. Also in the implementation of FhirConfiguration I find the client and clientFactory variables but they are annotated with @Metadata. Can I make my own custom implementation of the client to
intercept whenever a response code 4xx is received? And is it possible to set these Metadata values in my camel route?

Reply | Threaded
Open this post in threaded view
|

Re: How to set client or clientFactory in the FhirConfiguration object?

Claus Ibsen-2
Hi

Ah those 2 are wrong they should be @UriParam also. You are welcome to
log a JIRA and provide a PR

On Fri, Jun 21, 2019 at 10:10 AM Paw B Sørensen
<[hidden email]> wrote:
>
> The camel fhir component supports setting several query parameters. In the implementation of FhirConfiguration all of these parameters are annotated with @UriParam. Also in the implementation of FhirConfiguration I find the client and clientFactory variables but they are annotated with @Metadata. Can I make my own custom implementation of the client to
> intercept whenever a response code 4xx is received? And is it possible to set these Metadata values in my camel route?
>


--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Reply | Threaded
Open this post in threaded view
|

Re: How to set client or clientFactory in the FhirConfiguration object?

Claus Ibsen-2
And btw you should still be able to configure them as query
parameters, as those @UriParam etc are for documentation purposes.

On Fri, Jun 21, 2019 at 2:19 PM Claus Ibsen <[hidden email]> wrote:

>
> Hi
>
> Ah those 2 are wrong they should be @UriParam also. You are welcome to
> log a JIRA and provide a PR
>
> On Fri, Jun 21, 2019 at 10:10 AM Paw B Sørensen
> <[hidden email]> wrote:
> >
> > The camel fhir component supports setting several query parameters. In the implementation of FhirConfiguration all of these parameters are annotated with @UriParam. Also in the implementation of FhirConfiguration I find the client and clientFactory variables but they are annotated with @Metadata. Can I make my own custom implementation of the client to
> > intercept whenever a response code 4xx is received? And is it possible to set these Metadata values in my camel route?
> >
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2



--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Reply | Threaded
Open this post in threaded view
|

Re: How to set client or clientFactory in the FhirConfiguration object?

Claus Ibsen-2
Hi

I have fixed this for master, eg Camel 3

On Fri, Jun 21, 2019 at 2:20 PM Claus Ibsen <[hidden email]> wrote:

>
> And btw you should still be able to configure them as query
> parameters, as those @UriParam etc are for documentation purposes.
>
> On Fri, Jun 21, 2019 at 2:19 PM Claus Ibsen <[hidden email]> wrote:
> >
> > Hi
> >
> > Ah those 2 are wrong they should be @UriParam also. You are welcome to
> > log a JIRA and provide a PR
> >
> > On Fri, Jun 21, 2019 at 10:10 AM Paw B Sørensen
> > <[hidden email]> wrote:
> > >
> > > The camel fhir component supports setting several query parameters. In the implementation of FhirConfiguration all of these parameters are annotated with @UriParam. Also in the implementation of FhirConfiguration I find the client and clientFactory variables but they are annotated with @Metadata. Can I make my own custom implementation of the client to
> > > intercept whenever a response code 4xx is received? And is it possible to set these Metadata values in my camel route?
> > >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2



--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Reply | Threaded
Open this post in threaded view
|

Re: How to set client or clientFactory in the FhirConfiguration object?

John Poth
Sure you can check [1] for and example, thanks!

[1]
https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86fe4c488/components/camel-fhir/camel-fhir-component/src/test/java/org/apache/camel/component/fhir/FhirCustomClientConfigurationIT.java#L63

On Tue, Jun 25, 2019 at 7:42 AM Claus Ibsen <[hidden email]> wrote:

> Hi
>
> I have fixed this for master, eg Camel 3
>
> On Fri, Jun 21, 2019 at 2:20 PM Claus Ibsen <[hidden email]> wrote:
> >
> > And btw you should still be able to configure them as query
> > parameters, as those @UriParam etc are for documentation purposes.
> >
> > On Fri, Jun 21, 2019 at 2:19 PM Claus Ibsen <[hidden email]>
> wrote:
> > >
> > > Hi
> > >
> > > Ah those 2 are wrong they should be @UriParam also. You are welcome to
> > > log a JIRA and provide a PR
> > >
> > > On Fri, Jun 21, 2019 at 10:10 AM Paw B Sørensen
> > > <[hidden email]> wrote:
> > > >
> > > > The camel fhir component supports setting several query parameters.
> In the implementation of FhirConfiguration all of these parameters are
> annotated with @UriParam. Also in the implementation of FhirConfiguration I
> find the client and clientFactory variables but they are annotated with
> @Metadata. Can I make my own custom implementation of the client to
> > > > intercept whenever a response code 4xx is received? And is it
> possible to set these Metadata values in my camel route?
> > > >
> > >
> > >
> > > --
> > > Claus Ibsen
> > > -----------------
> > > http://davsclaus.com @davsclaus
> > > Camel in Action 2: https://www.manning.com/ibsen2
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2
>
Reply | Threaded
Open this post in threaded view
|

RE: How to set client or clientFactory in the FhirConfiguration object?

Paw B Sørensen
In reply to this post by Claus Ibsen-2
I still have problem setting my custom client in the FhirConfiguration. I have implemented a custom client TestClient implementing the IGenericClient interface and I annotated the class with @Component. I also implemented a route where I try to set my custom client using the following strategy

        .setHeader(Exchange.HTTP_QUERY, simple("client=#testClient"))

When I debug a test that activates the route I  break in the first line of the createEndpoint method of the FhirComponent and inspect the client variable of the endpoint it is null.

I am running this in a Spring configuration.

Paw B Sørensen
[hidden email]


-----Original Message-----
From: Claus Ibsen <[hidden email]>
Sent: 25. juni 2019 07:42
To: [hidden email]
Subject: Re: How to set client or clientFactory in the FhirConfiguration object?

Hi

I have fixed this for master, eg Camel 3

On Fri, Jun 21, 2019 at 2:20 PM Claus Ibsen <[hidden email]> wrote:

>
> And btw you should still be able to configure them as query
> parameters, as those @UriParam etc are for documentation purposes.
>
> On Fri, Jun 21, 2019 at 2:19 PM Claus Ibsen <[hidden email]> wrote:
> >
> > Hi
> >
> > Ah those 2 are wrong they should be @UriParam also. You are welcome
> > to log a JIRA and provide a PR
> >
> > On Fri, Jun 21, 2019 at 10:10 AM Paw B Sørensen
> > <[hidden email]> wrote:
> > >
> > > The camel fhir component supports setting several query
> > > parameters. In the implementation of FhirConfiguration all of these parameters are annotated with @UriParam. Also in the implementation of FhirConfiguration I find the client and clientFactory variables but they are annotated with @Metadata. Can I make my own custom implementation of the client to intercept whenever a response code 4xx is received? And is it possible to set these Metadata values in my camel route?
> > >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2



--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Reply | Threaded
Open this post in threaded view
|

Re: How to set client or clientFactory in the FhirConfiguration object?

John Poth
Hi Paw, I'm not sure why you're trying to set the custom IGenericClient
through the Camel header; I'd need more info on your requirements. If you
can link to a github project or whatnot that'd be great.

As stated, you can set the custom client in your route URI directly [1]
referencing your bean in your spring registry e.g
.to('fhir://create/resource?client=#customClientBeanName')

You can also set it directly on the component level if you want to use it
in multiple URIs [2]

HTH,

John.


[1]
https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86fe4c488/components/camel-fhir/camel-fhir-component/src/test/java/org/apache/camel/component/fhir/FhirCustomClientConfigurationIT.java#L67
[2]
https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86fe4c488/components/camel-fhir/camel-fhir-component/src/main/java/org/apache/camel/component/fhir/FhirComponent.java#L79





On Wed, Jun 26, 2019 at 12:43 PM Paw B Sørensen <
[hidden email]> wrote:

> I still have problem setting my custom client in the FhirConfiguration. I
> have implemented a custom client TestClient implementing the IGenericClient
> interface and I annotated the class with @Component. I also implemented a
> route where I try to set my custom client using the following strategy
>
>         .setHeader(Exchange.HTTP_QUERY, simple("client=#testClient"))
>
> When I debug a test that activates the route I  break in the first line of
> the createEndpoint method of the FhirComponent and inspect the client
> variable of the endpoint it is null.
>
> I am running this in a Spring configuration.
>
> Paw B Sørensen
> [hidden email]
>
>
> -----Original Message-----
> From: Claus Ibsen <[hidden email]>
> Sent: 25. juni 2019 07:42
> To: [hidden email]
> Subject: Re: How to set client or clientFactory in the FhirConfiguration
> object?
>
> Hi
>
> I have fixed this for master, eg Camel 3
>
> On Fri, Jun 21, 2019 at 2:20 PM Claus Ibsen <[hidden email]> wrote:
> >
> > And btw you should still be able to configure them as query
> > parameters, as those @UriParam etc are for documentation purposes.
> >
> > On Fri, Jun 21, 2019 at 2:19 PM Claus Ibsen <[hidden email]>
> wrote:
> > >
> > > Hi
> > >
> > > Ah those 2 are wrong they should be @UriParam also. You are welcome
> > > to log a JIRA and provide a PR
> > >
> > > On Fri, Jun 21, 2019 at 10:10 AM Paw B Sørensen
> > > <[hidden email]> wrote:
> > > >
> > > > The camel fhir component supports setting several query
> > > > parameters. In the implementation of FhirConfiguration all of these
> parameters are annotated with @UriParam. Also in the implementation of
> FhirConfiguration I find the client and clientFactory variables but they
> are annotated with @Metadata. Can I make my own custom implementation of
> the client to intercept whenever a response code 4xx is received? And is it
> possible to set these Metadata values in my camel route?
> > > >
> > >
> > >
> > > --
> > > Claus Ibsen
> > > -----------------
> > > http://davsclaus.com @davsclaus
> > > Camel in Action 2: https://www.manning.com/ibsen2
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2
>
Reply | Threaded
Open this post in threaded view
|

RE: How to set client or clientFactory in the FhirConfiguration object?

Stig Døssing
Hi John,

I work with Paw. We're trying to set either the client or client factory via the URI header, because we'd like to add a request interceptor to the client. We would like to log error response bodies.

You are right that it was weird to use HTTP_QUERY. Instead we've done the following:

.process(exchange -> {
  LOG.error("The client in the registry {}", getContext().getRegistry().lookupByName("testClient"));
}
.toD("fhir:update/resource?client=#testClient ").

We've verified that our test client is in the Camel registry by looking it up in the registry in the processor immediately before sending to the FHIR endpoint.
When we set a breakpoint in the processor, and then break on the next invocation of https://github.com/apache/camel/blob/789f1b26cf8b5ce7e40741c1236c3e1622c3550d/components/camel-fhir/camel-fhir-component/src/main/java/org/apache/camel/component/fhir/FhirComponent.java#L52, we are seeing the FhirConfiguration.client field be null.


-----Original Message-----
From: John Poth <[hidden email]>
Sent: 26. juni 2019 15:13
To: [hidden email]
Subject: Re: How to set client or clientFactory in the FhirConfiguration object?

Hi Paw, I'm not sure why you're trying to set the custom IGenericClient through the Camel header; I'd need more info on your requirements. If you can link to a github project or whatnot that'd be great.

As stated, you can set the custom client in your route URI directly [1] referencing your bean in your spring registry e.g
.to('fhir://create/resource?client=#customClientBeanName')

You can also set it directly on the component level if you want to use it in multiple URIs [2]

HTH,

John.


[1]
https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86fe4c488/components/camel-fhir/camel-fhir-component/src/test/java/org/apache/camel/component/fhir/FhirCustomClientConfigurationIT.java#L67
[2]
https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86fe4c488/components/camel-fhir/camel-fhir-component/src/main/java/org/apache/camel/component/fhir/FhirComponent.java#L79





On Wed, Jun 26, 2019 at 12:43 PM Paw B Sørensen < [hidden email]> wrote:

> I still have problem setting my custom client in the
> FhirConfiguration. I have implemented a custom client TestClient
> implementing the IGenericClient interface and I annotated the class
> with @Component. I also implemented a route where I try to set my
> custom client using the following strategy
>
>         .setHeader(Exchange.HTTP_QUERY, simple("client=#testClient"))
>
> When I debug a test that activates the route I  break in the first
> line of the createEndpoint method of the FhirComponent and inspect the
> client variable of the endpoint it is null.
>
> I am running this in a Spring configuration.
>
> Paw B Sørensen
> [hidden email]
>
>
> -----Original Message-----
> From: Claus Ibsen <[hidden email]>
> Sent: 25. juni 2019 07:42
> To: [hidden email]
> Subject: Re: How to set client or clientFactory in the
> FhirConfiguration object?
>
> Hi
>
> I have fixed this for master, eg Camel 3
>
> On Fri, Jun 21, 2019 at 2:20 PM Claus Ibsen <[hidden email]> wrote:
> >
> > And btw you should still be able to configure them as query
> > parameters, as those @UriParam etc are for documentation purposes.
> >
> > On Fri, Jun 21, 2019 at 2:19 PM Claus Ibsen <[hidden email]>
> wrote:
> > >
> > > Hi
> > >
> > > Ah those 2 are wrong they should be @UriParam also. You are
> > > welcome to log a JIRA and provide a PR
> > >
> > > On Fri, Jun 21, 2019 at 10:10 AM Paw B Sørensen
> > > <[hidden email]> wrote:
> > > >
> > > > The camel fhir component supports setting several query
> > > > parameters. In the implementation of FhirConfiguration all of
> > > > these
> parameters are annotated with @UriParam. Also in the implementation of
> FhirConfiguration I find the client and clientFactory variables but
> they are annotated with @Metadata. Can I make my own custom
> implementation of the client to intercept whenever a response code 4xx
> is received? And is it possible to set these Metadata values in my camel route?
> > > >
> > >
> > >
> > > --
> > > Claus Ibsen
> > > -----------------
> > > http://davsclaus.com @davsclaus
> > > Camel in Action 2: https://www.manning.com/ibsen2
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2
>
Reply | Threaded
Open this post in threaded view
|

Re: How to set client or clientFactory in the FhirConfiguration object?

John Poth
Hi Stig,

Endpoint options are set at a later stage[1] which is why you don't see the
desired cutstom client.

You could also set a breakpoint at [2] to see which client is really used
for the update method. From what I see you're setting it up correctly.

HTH,

John.

[1]
https://github.com/apache/camel/blob/f88ca73cf730a83cd99b5389f79a82ca3c7abdc3/core/camel-support/src/main/java/org/apache/camel/support/component/AbstractApiEndpoint.java#L105
[2]
https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86fe4c488/components/camel-fhir/camel-fhir-api/src/main/java/org/apache/camel/component/fhir/api/FhirUpdate.java#L37

On Thu, Jun 27, 2019 at 1:19 PM Stig Døssing <[hidden email]>
wrote:

> Hi John,
>
> I work with Paw. We're trying to set either the client or client factory
> via the URI header, because we'd like to add a request interceptor to the
> client. We would like to log error response bodies.
>
> You are right that it was weird to use HTTP_QUERY. Instead we've done the
> following:
>
> .process(exchange -> {
>   LOG.error("The client in the registry {}",
> getContext().getRegistry().lookupByName("testClient"));
> }
> .toD("fhir:update/resource?client=#testClient ").
>
> We've verified that our test client is in the Camel registry by looking it
> up in the registry in the processor immediately before sending to the FHIR
> endpoint.
> When we set a breakpoint in the processor, and then break on the next
> invocation of
> https://github.com/apache/camel/blob/789f1b26cf8b5ce7e40741c1236c3e1622c3550d/components/camel-fhir/camel-fhir-component/src/main/java/org/apache/camel/component/fhir/FhirComponent.java#L52,
> we are seeing the FhirConfiguration.client field be null.
>
>
> -----Original Message-----
> From: John Poth <[hidden email]>
> Sent: 26. juni 2019 15:13
> To: [hidden email]
> Subject: Re: How to set client or clientFactory in the FhirConfiguration
> object?
>
> Hi Paw, I'm not sure why you're trying to set the custom IGenericClient
> through the Camel header; I'd need more info on your requirements. If you
> can link to a github project or whatnot that'd be great.
>
> As stated, you can set the custom client in your route URI directly [1]
> referencing your bean in your spring registry e.g
> .to('fhir://create/resource?client=#customClientBeanName')
>
> You can also set it directly on the component level if you want to use it
> in multiple URIs [2]
>
> HTH,
>
> John.
>
>
> [1]
>
> https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86fe4c488/components/camel-fhir/camel-fhir-component/src/test/java/org/apache/camel/component/fhir/FhirCustomClientConfigurationIT.java#L67
> [2]
>
> https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86fe4c488/components/camel-fhir/camel-fhir-component/src/main/java/org/apache/camel/component/fhir/FhirComponent.java#L79
>
>
>
>
>
> On Wed, Jun 26, 2019 at 12:43 PM Paw B Sørensen <
> [hidden email]> wrote:
>
> > I still have problem setting my custom client in the
> > FhirConfiguration. I have implemented a custom client TestClient
> > implementing the IGenericClient interface and I annotated the class
> > with @Component. I also implemented a route where I try to set my
> > custom client using the following strategy
> >
> >         .setHeader(Exchange.HTTP_QUERY, simple("client=#testClient"))
> >
> > When I debug a test that activates the route I  break in the first
> > line of the createEndpoint method of the FhirComponent and inspect the
> > client variable of the endpoint it is null.
> >
> > I am running this in a Spring configuration.
> >
> > Paw B Sørensen
> > [hidden email]
> >
> >
> > -----Original Message-----
> > From: Claus Ibsen <[hidden email]>
> > Sent: 25. juni 2019 07:42
> > To: [hidden email]
> > Subject: Re: How to set client or clientFactory in the
> > FhirConfiguration object?
> >
> > Hi
> >
> > I have fixed this for master, eg Camel 3
> >
> > On Fri, Jun 21, 2019 at 2:20 PM Claus Ibsen <[hidden email]>
> wrote:
> > >
> > > And btw you should still be able to configure them as query
> > > parameters, as those @UriParam etc are for documentation purposes.
> > >
> > > On Fri, Jun 21, 2019 at 2:19 PM Claus Ibsen <[hidden email]>
> > wrote:
> > > >
> > > > Hi
> > > >
> > > > Ah those 2 are wrong they should be @UriParam also. You are
> > > > welcome to log a JIRA and provide a PR
> > > >
> > > > On Fri, Jun 21, 2019 at 10:10 AM Paw B Sørensen
> > > > <[hidden email]> wrote:
> > > > >
> > > > > The camel fhir component supports setting several query
> > > > > parameters. In the implementation of FhirConfiguration all of
> > > > > these
> > parameters are annotated with @UriParam. Also in the implementation of
> > FhirConfiguration I find the client and clientFactory variables but
> > they are annotated with @Metadata. Can I make my own custom
> > implementation of the client to intercept whenever a response code 4xx
> > is received? And is it possible to set these Metadata values in my camel
> route?
> > > > >
> > > >
> > > >
> > > > --
> > > > Claus Ibsen
> > > > -----------------
> > > > http://davsclaus.com @davsclaus
> > > > Camel in Action 2: https://www.manning.com/ibsen2
> > >
> > >
> > >
> > > --
> > > Claus Ibsen
> > > -----------------
> > > http://davsclaus.com @davsclaus
> > > Camel in Action 2: https://www.manning.com/ibsen2
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2
> >
>
Reply | Threaded
Open this post in threaded view
|

RE: How to set client or clientFactory in the FhirConfiguration object?

Stig Døssing
Thanks John, you were right. We were simply looking at the configuration object too early. Thanks for your help.

-----Original Message-----
From: John Poth <[hidden email]>
Sent: 27. juni 2019 18:02
To: [hidden email]
Subject: Re: How to set client or clientFactory in the FhirConfiguration object?

Hi Stig,

Endpoint options are set at a later stage[1] which is why you don't see the desired cutstom client.

You could also set a breakpoint at [2] to see which client is really used for the update method. From what I see you're setting it up correctly.

HTH,

John.

[1]
https://github.com/apache/camel/blob/f88ca73cf730a83cd99b5389f79a82ca3c7abdc3/core/camel-support/src/main/java/org/apache/camel/support/component/AbstractApiEndpoint.java#L105
[2]
https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86fe4c488/components/camel-fhir/camel-fhir-api/src/main/java/org/apache/camel/component/fhir/api/FhirUpdate.java#L37

On Thu, Jun 27, 2019 at 1:19 PM Stig Døssing <[hidden email]>
wrote:

> Hi John,
>
> I work with Paw. We're trying to set either the client or client
> factory via the URI header, because we'd like to add a request
> interceptor to the client. We would like to log error response bodies.
>
> You are right that it was weird to use HTTP_QUERY. Instead we've done
> the
> following:
>
> .process(exchange -> {
>   LOG.error("The client in the registry {}",
> getContext().getRegistry().lookupByName("testClient"));
> }
> .toD("fhir:update/resource?client=#testClient ").
>
> We've verified that our test client is in the Camel registry by
> looking it up in the registry in the processor immediately before
> sending to the FHIR endpoint.
> When we set a breakpoint in the processor, and then break on the next
> invocation of
> https://github.com/apache/camel/blob/789f1b26cf8b5ce7e40741c1236c3e162
> 2c3550d/components/camel-fhir/camel-fhir-component/src/main/java/org/a
> pache/camel/component/fhir/FhirComponent.java#L52,
> we are seeing the FhirConfiguration.client field be null.
>
>
> -----Original Message-----
> From: John Poth <[hidden email]>
> Sent: 26. juni 2019 15:13
> To: [hidden email]
> Subject: Re: How to set client or clientFactory in the
> FhirConfiguration object?
>
> Hi Paw, I'm not sure why you're trying to set the custom
> IGenericClient through the Camel header; I'd need more info on your
> requirements. If you can link to a github project or whatnot that'd be great.
>
> As stated, you can set the custom client in your route URI directly
> [1] referencing your bean in your spring registry e.g
> .to('fhir://create/resource?client=#customClientBeanName')
>
> You can also set it directly on the component level if you want to use
> it in multiple URIs [2]
>
> HTH,
>
> John.
>
>
> [1]
>
> https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86
> fe4c488/components/camel-fhir/camel-fhir-component/src/test/java/org/a
> pache/camel/component/fhir/FhirCustomClientConfigurationIT.java#L67
> [2]
>
> https://github.com/apache/camel/blob/b9a3117f19dd19abd2ea8b789c42c3e86
> fe4c488/components/camel-fhir/camel-fhir-component/src/main/java/org/a
> pache/camel/component/fhir/FhirComponent.java#L79
>
>
>
>
>
> On Wed, Jun 26, 2019 at 12:43 PM Paw B Sørensen <
> [hidden email]> wrote:
>
> > I still have problem setting my custom client in the
> > FhirConfiguration. I have implemented a custom client TestClient
> > implementing the IGenericClient interface and I annotated the class
> > with @Component. I also implemented a route where I try to set my
> > custom client using the following strategy
> >
> >         .setHeader(Exchange.HTTP_QUERY,
> > simple("client=#testClient"))
> >
> > When I debug a test that activates the route I  break in the first
> > line of the createEndpoint method of the FhirComponent and inspect
> > the client variable of the endpoint it is null.
> >
> > I am running this in a Spring configuration.
> >
> > Paw B Sørensen
> > [hidden email]
> >
> >
> > -----Original Message-----
> > From: Claus Ibsen <[hidden email]>
> > Sent: 25. juni 2019 07:42
> > To: [hidden email]
> > Subject: Re: How to set client or clientFactory in the
> > FhirConfiguration object?
> >
> > Hi
> >
> > I have fixed this for master, eg Camel 3
> >
> > On Fri, Jun 21, 2019 at 2:20 PM Claus Ibsen <[hidden email]>
> wrote:
> > >
> > > And btw you should still be able to configure them as query
> > > parameters, as those @UriParam etc are for documentation purposes.
> > >
> > > On Fri, Jun 21, 2019 at 2:19 PM Claus Ibsen
> > > <[hidden email]>
> > wrote:
> > > >
> > > > Hi
> > > >
> > > > Ah those 2 are wrong they should be @UriParam also. You are
> > > > welcome to log a JIRA and provide a PR
> > > >
> > > > On Fri, Jun 21, 2019 at 10:10 AM Paw B Sørensen
> > > > <[hidden email]> wrote:
> > > > >
> > > > > The camel fhir component supports setting several query
> > > > > parameters. In the implementation of FhirConfiguration all of
> > > > > these
> > parameters are annotated with @UriParam. Also in the implementation
> > of FhirConfiguration I find the client and clientFactory variables
> > but they are annotated with @Metadata. Can I make my own custom
> > implementation of the client to intercept whenever a response code
> > 4xx is received? And is it possible to set these Metadata values in
> > my camel
> route?
> > > > >
> > > >
> > > >
> > > > --
> > > > Claus Ibsen
> > > > -----------------
> > > > http://davsclaus.com @davsclaus
> > > > Camel in Action 2: https://www.manning.com/ibsen2
> > >
> > >
> > >
> > > --
> > > Claus Ibsen
> > > -----------------
> > > http://davsclaus.com @davsclaus
> > > Camel in Action 2: https://www.manning.com/ibsen2
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2
> >
>