You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2009/05/07 10:00:22 UTC
svn commit: r772537 - in /camel/trunk/components/camel-cxf/src:
main/java/org/apache/camel/component/cxf/
main/java/org/apache/camel/component/cxf/transport/
main/java/org/apache/camel/component/cxf/util/
test/java/org/apache/camel/component/cxf/
Author: ningjiang
Date: Thu May 7 08:00:14 2009
New Revision: 772537
URL: http://svn.apache.org/viewvc?rev=772537&view=rev
Log:
CAMEL-1589 clean up the CamelTransportConstants.CONTENT_TYPE
Modified:
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfHeaderFilterStrategy.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/DefaultCxfBinding.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/transport/CamelTransportConstants.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/util/CxfHeaderHelper.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfRawMessageRouterTest.java
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfHeaderFilterStrategy.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfHeaderFilterStrategy.java?rev=772537&r1=772536&r2=772537&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfHeaderFilterStrategy.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfHeaderFilterStrategy.java Thu May 7 08:00:14 2009
@@ -63,11 +63,10 @@
getOutFilter().add(Message.PROTOCOL_HEADERS);
getInFilter().add(Message.PROTOCOL_HEADERS);
- // Since the DefaultCxfBinding deal with the content-type separately.
- // We need to filter this header
+ // Since CXF can take the content-type from the protocol header
+ // we need to filter this header of this name.
getOutFilter().add("content-type");
- getInFilter().add("content-type");
-
+
// initialize message header filter map with default SOAP filter
messageHeaderFiltersMap = new HashMap<String, MessageHeaderFilter>();
addToMessageHeaderFilterMap(new SoapMessageHeaderFilter());
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/DefaultCxfBinding.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/DefaultCxfBinding.java?rev=772537&r1=772536&r2=772537&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/DefaultCxfBinding.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/DefaultCxfBinding.java Thu May 7 08:00:14 2009
@@ -214,7 +214,7 @@
Map<String, Object> camelHeaders = camelExchange.getOut().getHeaders();
extractInvocationContextFromCamel(camelExchange, camelHeaders,
responseContext, Client.RESPONSE_CONTEXT);
-
+
propagateHeadersFromCamelToCxf(camelExchange, camelHeaders, cxfExchange,
responseContext);
// create out message
@@ -228,7 +228,7 @@
// propagate contexts
if (dataFormat != DataFormat.POJO) {
// copying response context to out message seems to cause problem in POJO mode
- outMessage.putAll(responseContext);
+ outMessage.putAll(responseContext);
}
outMessage.put(Client.RESPONSE_CONTEXT, responseContext);
@@ -360,19 +360,10 @@
}
}
- // propagate content type
- String key = Message.CONTENT_TYPE;
- Object value = cxfMessage.get(key);
- if (value != null && !headerFilterStrategy.applyFilterToExternalHeaders(key, value, exchange)) {
- camelHeaders.put(CamelTransportConstants.CONTENT_TYPE, value);
- if (LOG.isTraceEnabled()) {
- LOG.trace("Populate header from CXF header=" + key + " value=" + value);
- }
- }
// propagate SOAP/protocol header list
- key = Header.HEADER_LIST;
- value = cxfMessage.get(key);
+ String key = Header.HEADER_LIST;
+ Object value = cxfMessage.get(key);
if (value != null) {
if (!headerFilterStrategy.applyFilterToExternalHeaders(key, value, exchange)) {
camelHeaders.put(key, value);
@@ -414,12 +405,6 @@
LOG.trace("Propagate to CXF header: " + entry.getKey() + " value: " + entry.getValue());
}
- // put content type in exchange
- if (CamelTransportConstants.CONTENT_TYPE.equals(entry.getKey())) {
- cxfExchange.put(Message.CONTENT_TYPE, entry.getValue());
- continue;
- }
-
// put response code in request context so it will be copied to CXF message's property
if (Message.RESPONSE_CODE.equals(entry.getKey())) {
cxfContext.put(entry.getKey(), entry.getValue());
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/transport/CamelTransportConstants.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/transport/CamelTransportConstants.java?rev=772537&r1=772536&r2=772537&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/transport/CamelTransportConstants.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/transport/CamelTransportConstants.java Thu May 7 08:00:14 2009
@@ -46,8 +46,7 @@
public static final String CAMEL_SERVER_CONFIG_ID = "camel-server";
public static final String CAMEL_REBASED_REPLY_TO = "org.apache.cxf.camel.server.replyto";
public static final String CAMEL_CORRELATION_ID = "org.apache.cxf.camel.correlationId";
- public static final String CONTENT_TYPE = "content.type";
-
+
private CamelTransportConstants() {
// Utility class
}
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/util/CxfHeaderHelper.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/util/CxfHeaderHelper.java?rev=772537&r1=772536&r2=772537&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/util/CxfHeaderHelper.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/util/CxfHeaderHelper.java Thu May 7 08:00:14 2009
@@ -42,11 +42,11 @@
}
/**
- * Progagates Camel headers to CXF message.
+ * Propagates Camel headers to CXF message.
*
* @param strategy header filter strategy
* @param headers Camel header
- * @param message CXF meassage
+ * @param message CXF message
* @param exchange provides context for filtering
*/
public static void propagateCamelToCxf(HeaderFilterStrategy strategy,
@@ -64,9 +64,7 @@
if (strategy != null
&& !strategy.applyFilterToCamelHeaders(entry.getKey(), entry.getValue(), exchange)) {
- if (CamelTransportConstants.CONTENT_TYPE.equals(entry.getKey())) {
- message.put(Message.CONTENT_TYPE, entry.getValue());
- } else if (Client.REQUEST_CONTEXT.equals(entry.getKey())
+ if (Client.REQUEST_CONTEXT.equals(entry.getKey())
|| Client.RESPONSE_CONTEXT.equals(entry.getKey())
|| Message.RESPONSE_CODE.equals(entry.getKey())) {
message.put(entry.getKey(), entry.getValue());
@@ -97,16 +95,9 @@
}
}
- // propagate content type
- String key = Message.CONTENT_TYPE;
- Object value = message.get(key);
- if (value != null && !strategy.applyFilterToExternalHeaders(key, value, exchange)) {
- headers.put(CamelTransportConstants.CONTENT_TYPE, value);
- }
-
// propagate request context
- key = Client.REQUEST_CONTEXT;
- value = message.get(key);
+ String key = Client.REQUEST_CONTEXT;
+ Object value = message.get(key);
if (value != null && !strategy.applyFilterToExternalHeaders(key, value, exchange)) {
headers.put(key, value);
}
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfRawMessageRouterTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfRawMessageRouterTest.java?rev=772537&r1=772536&r2=772537&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfRawMessageRouterTest.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfRawMessageRouterTest.java Thu May 7 08:00:14 2009
@@ -46,7 +46,7 @@
Map protocalHeaders = (Map) context.get("org.apache.cxf.message.Message.PROTOCOL_HEADERS");
assertEquals("Should get the content type", protocalHeaders.get("content-type").toString(), "[text/xml; charset=utf-8]");
assertEquals("Should get the response code ", context.get("org.apache.cxf.message.Message.RESPONSE_CODE"), 200);
- assertEquals("Should get the content type", result.assertExchangeReceived(0).getIn().getHeaders().get("content.type"), "text/xml; charset=utf-8");
+ assertEquals("Should get the content type", result.assertExchangeReceived(0).getIn().getHeaders().get("content-type"), "text/xml; charset=utf-8");
}
public void testTheContentTypeOnTheWire() throws Exception {
@@ -60,9 +60,9 @@
}
});
-
- assertNotNull("We should get the content type here", exchange.getOut().getHeader("Content-Type"));
+ assertNotNull("We should get the Content-Type here", exchange.getOut().getHeader("Content-Type"));
assertEquals("Get wrong content type", "text/xml; charset=utf-8", exchange.getOut().getHeader("Content-Type"));
+ assertNull("We should not get the content-type here", exchange.getOut().getHeader("content-type"));
String response = exchange.getOut().getBody(String.class);
assertNotNull("Response should not be null", response);
assertTrue("We should get right return result", response.indexOf("echo hello world") > 0);