You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ay...@apache.org on 2013/07/24 18:11:44 UTC

git commit: CAMEL-6393: make it configurable at CXF EP

Updated Branches:
  refs/heads/master f04e37b3f -> f6f6b78a9


CAMEL-6393: make it configurable at CXF EP


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/f6f6b78a
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/f6f6b78a
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/f6f6b78a

Branch: refs/heads/master
Commit: f6f6b78a912c7f137f604189d5322f4adb5e79c6
Parents: f04e37b
Author: Akitoshi Yoshida <ay...@apache.org>
Authored: Wed Jul 24 18:09:54 2013 +0200
Committer: Akitoshi Yoshida <ay...@apache.org>
Committed: Wed Jul 24 18:11:11 2013 +0200

----------------------------------------------------------------------
 .../java/org/apache/camel/component/cxf/CxfConsumer.java    | 4 ++++
 .../java/org/apache/camel/component/cxf/CxfEndpoint.java    | 9 +++++++++
 .../java/org/apache/camel/component/cxf/CxfProducer.java    | 4 ++++
 3 files changed, 17 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/f6f6b78a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java
index 09a7654..7c095e1 100644
--- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java
+++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java
@@ -172,6 +172,10 @@ public class CxfConsumer extends DefaultConsumer {
                 
                 camelExchange.setProperty(Message.MTOM_ENABLED, String.valueOf(endpoint.isMtomEnabled()));
                 
+                if (endpoint.getMergeProtocolHeaders()) {
+                    camelExchange.setProperty(CxfConstants.CAMEL_CXF_PROTOCOL_HEADERS_MERGED, Boolean.TRUE);
+                }
+
                 // bind the CXF request into a Camel exchange
                 binding.populateExchangeFromCxfRequest(cxfExchange, camelExchange);
                 // extract the javax.xml.ws header

http://git-wip-us.apache.org/repos/asf/camel/blob/f6f6b78a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
index 0d722ef..23a6ce7 100644
--- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
+++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
@@ -137,6 +137,7 @@ public class CxfEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
     private boolean mtomEnabled;
     private boolean skipPayloadMessagePartCheck;
     private boolean skipFaultLogging;
+    private boolean mergeProtocolHeaders;
     private Map<String, Object> properties;
     private List<Interceptor<? extends Message>> in 
         = new ModCountCopyOnWriteArrayList<Interceptor<? extends Message>>();
@@ -1069,6 +1070,14 @@ public class CxfEndpoint extends DefaultEndpoint implements HeaderFilterStrategy
         this.skipFaultLogging = skipFaultLogging;
     }
 
+    public Boolean getMergeProtocolHeaders() {
+        return mergeProtocolHeaders;
+    }
+
+    public void setMergeProtocolHeaders(boolean mergeProtocolHeaders) {
+        this.mergeProtocolHeaders = mergeProtocolHeaders;
+    }
+
     public void setBindingConfig(BindingConfiguration bindingConfig) {
         this.bindingConfig = bindingConfig;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/f6f6b78a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
index 28b5d12..3f1ec4c 100644
--- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
+++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
@@ -175,6 +175,10 @@ public class CxfProducer extends DefaultProducer implements AsyncProcessor {
         camelExchange.setProperty(CxfConstants.DATA_FORMAT_PROPERTY, dataFormat);   
         LOG.trace("Set Camel Exchange property: {}={}", DataFormat.class.getName(), dataFormat);
         
+        if (endpoint.getMergeProtocolHeaders()) {
+            camelExchange.setProperty(CxfConstants.CAMEL_CXF_PROTOCOL_HEADERS_MERGED, Boolean.TRUE);
+        }
+        
         // set data format mode in the request context
         requestContext.put(DataFormat.class.getName(), dataFormat);