ch-ciq component
The ch-ciq component provides interfaces for actors of the Community Information Query IHE transaction (CH-CIQ), which is described in the Swiss national integration profiles.
Actors
The transaction defines the following actors:
Producer side corresponds to the Community Information Consumer actor. Consumer side corresponds to the Community Information Provider actor.
Dependencies
In a Maven-based environment, the following dependency must be registered in pom.xml
:
<dependency>
<groupId>org.openehealth.ipf.platform-camel</groupId>
<artifactId>ipf-platform-camel-ihe-hpd</artifactId>
<version>${ipf-version}</version>
</dependency>
Endpoint URI Format
Producer
The endpoint URI format of the ch-ciq
component producers is:
ch-ciq://hostname:port/path/to/service[?parameters]
where hostname is either an IP address or a domain name, port is a port number, and path/to/service represents additional path elements of the remote service. URI parameters are optional and control special features as described in the corresponding section below.
Consumer
The endpoint URI format of ch-ciq
component consumers is:
ch-ciq:serviceName[?parameters]
The resulting URL of the exposed IHE Web Service endpoint depends on both the configuration of the deployment container and the serviceName parameter provided in the Camel endpoint URI.
For example, when a Tomcat container on the host eHealth.server.org
is configured in the following way:
port = 8888
contextPath = /ZAD
servletPath = /cpi/*
and serviceName equals to chciq
, then the ch-ciq consumer will be available for external clients under the URL
http://eHealth.server.org:8888/ZAD/cpi/chciq
Additional URI parameters are optional and control special features as described in the corresponding section below.
Data Types
The ch-ciq component produces and consumes objects of the DSMLv2 data model:
- Request message –
BatchRequest
- Response message –
BatchResponse
Example
This is an example on how to use the component on the consumer side:
from("ch-ciq:chciq?audit=true")
.process(myProcessor)
// process the incoming request and create a response