1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.openehealth.ipf.platform.camel.hl7;
18
19 import ca.uhn.hl7v2.HL7Exception;
20 import ca.uhn.hl7v2.model.Message;
21 import org.apache.camel.Exchange;
22 import org.apache.camel.Expression;
23 import org.openehealth.ipf.modules.hl7.HL7v2Exception;
24
25
26
27
28 class StaticResponseExpression implements Expression {
29
30 private final String message;
31
32 public StaticResponseExpression(String message) {
33 this.message = message;
34 }
35
36 @Override
37 public <T> T evaluate(Exchange exchange, Class<T> type) {
38 try {
39 Message msg = HL7v2.bodyMessage(exchange);
40 Message result = msg.getParser().parse(message);
41 return type.cast(result);
42 } catch (HL7Exception e) {
43 throw new HL7v2Exception(e);
44 }
45
46 }
47 }