1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.openehealth.ipf.platform.camel.ihe.core;
17
18 import org.apache.camel.Endpoint;
19 import org.apache.camel.Processor;
20 import org.apache.camel.Producer;
21
22 import java.util.List;
23
24
25
26
27 public class InterceptorUtils {
28
29 public static Producer adaptProducerChain(
30 List<Interceptor> chain,
31 Endpoint endpoint,
32 Producer originalProducer) {
33 Processor processor = originalProducer;
34 for (Interceptor interceptor : chain) {
35 interceptor.setEndpoint(endpoint);
36 interceptor.setWrappedProcessor(processor);
37 processor = interceptor;
38 }
39
40 return new Interceptor2ProducerAdapter(processor, originalProducer);
41 }
42 }