1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.openehealth.ipf.platform.camel.ihe.xds.rad75;
17
18 import org.apache.camel.Endpoint;
19 import org.openehealth.ipf.commons.ihe.ws.JaxWsClientFactory;
20 import org.openehealth.ipf.commons.ihe.ws.WsTransactionConfiguration;
21 import org.openehealth.ipf.commons.ihe.xds.core.audit.XdsNonconstructiveDocumentSetRequestAuditDataset;
22 import org.openehealth.ipf.commons.ihe.xds.core.ebxml.ebxml30.RetrieveDocumentSetResponseType;
23 import org.openehealth.ipf.commons.ihe.xds.core.ebxml.ebxml30.RetrieveImagingDocumentSetRequestType;
24 import org.openehealth.ipf.platform.camel.ihe.ws.AbstractWebService;
25 import org.openehealth.ipf.platform.camel.ihe.ws.AbstractWsEndpoint;
26 import org.openehealth.ipf.platform.camel.ihe.ws.AbstractWsProducer;
27 import org.openehealth.ipf.platform.camel.ihe.ws.SimpleWsProducer;
28 import org.openehealth.ipf.platform.camel.ihe.xds.XdsComponent;
29 import org.openehealth.ipf.platform.camel.ihe.xds.XdsEndpoint;
30
31 import java.util.Map;
32
33 import static org.openehealth.ipf.commons.ihe.xds.RAD.Interactions.RAD_75;
34
35
36
37
38 public class Rad75Component extends XdsComponent<XdsNonconstructiveDocumentSetRequestAuditDataset> {
39
40
41 public Rad75Component() {
42 super(RAD_75);
43 }
44
45 @Override
46 protected Endpoint createEndpoint(String uri, String remaining, Map<String, Object> parameters) {
47 return new XdsEndpoint<XdsNonconstructiveDocumentSetRequestAuditDataset>(uri, remaining, this, parameters, null) {
48 @Override
49 public AbstractWsProducer<XdsNonconstructiveDocumentSetRequestAuditDataset, WsTransactionConfiguration<XdsNonconstructiveDocumentSetRequestAuditDataset>, ?, ?> getProducer(AbstractWsEndpoint<XdsNonconstructiveDocumentSetRequestAuditDataset, WsTransactionConfiguration<XdsNonconstructiveDocumentSetRequestAuditDataset>> endpoint,
50 JaxWsClientFactory<XdsNonconstructiveDocumentSetRequestAuditDataset> clientFactory) {
51 return new SimpleWsProducer<>(
52 endpoint, clientFactory, RetrieveImagingDocumentSetRequestType.class, RetrieveDocumentSetResponseType.class);
53 }
54
55 @Override
56 protected AbstractWebService getCustomServiceInstance(AbstractWsEndpoint<XdsNonconstructiveDocumentSetRequestAuditDataset, WsTransactionConfiguration<XdsNonconstructiveDocumentSetRequestAuditDataset>> endpoint) {
57 return new Rad75Service(endpoint.getHomeCommunityId());
58 }
59 };
60 }
61
62
63 }