1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.openehealth.ipf.platform.camel.ihe.hl7v3.iti55.deferredresponse;
17
18 import org.apache.camel.Endpoint;
19 import org.openehealth.ipf.commons.ihe.hl7v3.audit.Hl7v3AuditDataset;
20 import org.openehealth.ipf.commons.ihe.hl7v3.Hl7v3WsTransactionConfiguration;
21 import org.openehealth.ipf.commons.ihe.ws.JaxWsClientFactory;
22 import org.openehealth.ipf.platform.camel.ihe.hl7v3.Hl7v3AsyncResponseEndpoint;
23 import org.openehealth.ipf.platform.camel.ihe.hl7v3.Hl7v3Component;
24 import org.openehealth.ipf.platform.camel.ihe.ws.AbstractWsEndpoint;
25 import org.openehealth.ipf.platform.camel.ihe.ws.AbstractWsProducer;
26
27 import java.util.Map;
28
29 import static org.openehealth.ipf.commons.ihe.hl7v3.XCPD.Interactions.ITI_55_DEFERRED_RESPONSE;
30
31
32
33
34
35 public class Iti55DeferredResponseComponent extends Hl7v3Component<Hl7v3WsTransactionConfiguration> {
36
37 public static final String THREAD_POOL_NAME = "iti55.deferred.response";
38
39 public Iti55DeferredResponseComponent() {
40 super(ITI_55_DEFERRED_RESPONSE);
41 }
42
43 @Override
44 protected Endpoint createEndpoint(String uri, String remaining, Map<String, Object> parameters) {
45 return new Hl7v3AsyncResponseEndpoint<Hl7v3WsTransactionConfiguration>(uri, remaining, this, parameters, Iti55DeferredResponseService.class) {
46 @Override
47 public AbstractWsProducer<Hl7v3AuditDataset, Hl7v3WsTransactionConfiguration, ?, ?> getProducer(AbstractWsEndpoint<Hl7v3AuditDataset, Hl7v3WsTransactionConfiguration> endpoint,
48 JaxWsClientFactory<Hl7v3AuditDataset> clientFactory) {
49 return new Iti55DeferredResponseProducer(endpoint, clientFactory);
50 }
51 };
52 }
53
54 }