You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2015/07/11 09:51:21 UTC
[2/2] camel git commit: CAMEL-6469: http component now have header
with response status line text as well (the code is already there)
CAMEL-6469: http component now have header with response status line text as well (the code is already there)
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a4828fa2
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a4828fa2
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a4828fa2
Branch: refs/heads/master
Commit: a4828fa2849dbb3424fb41c83bf6d89ed64f279f
Parents: 2dac9aa
Author: Claus Ibsen <da...@apache.org>
Authored: Sat Jul 11 09:57:37 2015 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Sat Jul 11 09:57:37 2015 +0200
----------------------------------------------------------------------
camel-core/src/main/java/org/apache/camel/Exchange.java | 1 +
.../java/org/apache/camel/component/ahc/DefaultAhcBinding.java | 1 +
.../apache/camel/component/ahc/AhcProduceGetHeadersTest.java | 1 +
.../component/ahc/AhcProduceNoThrowExceptionOnFailureTest.java | 1 +
.../org/apache/camel/component/http/HttpPollingConsumer.java | 1 +
.../main/java/org/apache/camel/component/http/HttpProducer.java | 1 +
.../org/apache/camel/component/http4/HttpPollingConsumer.java | 3 +++
.../java/org/apache/camel/component/http4/HttpProducer.java | 3 +++
.../java/org/apache/camel/component/http4/HttpMethodsTest.java | 1 +
.../java/org/apache/camel/component/http4/HttpRedirectTest.java | 1 +
.../camel/component/jetty/JettyCallHttpThenExceptionTest.java | 1 +
.../camel/component/netty/http/DefaultNettyHttpBinding.java | 2 +-
.../apache/camel/component/netty/http/NettyHttpConstants.java | 5 ++++-
.../component/netty/http/NettyHttpFilterCamelHeadersTest.java | 2 +-
.../camel/component/netty4/http/DefaultNettyHttpBinding.java | 2 +-
.../apache/camel/component/netty4/http/NettyHttpConstants.java | 5 ++++-
.../component/netty4/http/NettyHttpFilterCamelHeadersTest.java | 2 +-
17 files changed, 27 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/camel-core/src/main/java/org/apache/camel/Exchange.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/Exchange.java b/camel-core/src/main/java/org/apache/camel/Exchange.java
index 5cfe78e..8e7cc84 100644
--- a/camel-core/src/main/java/org/apache/camel/Exchange.java
+++ b/camel-core/src/main/java/org/apache/camel/Exchange.java
@@ -145,6 +145,7 @@ public interface Exchange {
String HTTP_QUERY = "CamelHttpQuery";
String HTTP_RAW_QUERY = "CamelHttpRawQuery";
String HTTP_RESPONSE_CODE = "CamelHttpResponseCode";
+ String HTTP_RESPONSE_TEXT = "CamelHttpResponseText";
String HTTP_URI = "CamelHttpUri";
String HTTP_URL = "CamelHttpUrl";
String HTTP_CHUNKED = "CamelHttpChunked";
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/DefaultAhcBinding.java
----------------------------------------------------------------------
diff --git a/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/DefaultAhcBinding.java b/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/DefaultAhcBinding.java
index 8c57cd9..a7fd405 100644
--- a/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/DefaultAhcBinding.java
+++ b/components/camel-ahc/src/main/java/org/apache/camel/component/ahc/DefaultAhcBinding.java
@@ -191,6 +191,7 @@ public class DefaultAhcBinding implements AhcBinding {
// Just filter the http protocol headers
MessageHelper.copyHeaders(exchange.getIn(), exchange.getOut(), httpProtocolHeaderFilterStrategy, false);
exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE, responseStatus.getStatusCode());
+ exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_TEXT, responseStatus.getStatusText());
}
@Override
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceGetHeadersTest.java
----------------------------------------------------------------------
diff --git a/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceGetHeadersTest.java b/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceGetHeadersTest.java
index d445aa7..16447eb 100644
--- a/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceGetHeadersTest.java
+++ b/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceGetHeadersTest.java
@@ -31,6 +31,7 @@ public class AhcProduceGetHeadersTest extends BaseAhcTest {
getMockEndpoint("mock:result").expectedHeaderReceived("foo", 123);
getMockEndpoint("mock:result").expectedHeaderReceived("bar", "cool");
getMockEndpoint("mock:result").expectedHeaderReceived(Exchange.HTTP_RESPONSE_CODE, 200);
+ getMockEndpoint("mock:result").expectedHeaderReceived(Exchange.HTTP_RESPONSE_TEXT, "OK");
getMockEndpoint("mock:result").expectedHeaderReceived(Exchange.CONTENT_LENGTH, 9);
Map<String, Object> headers = new HashMap<String, Object>();
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceNoThrowExceptionOnFailureTest.java
----------------------------------------------------------------------
diff --git a/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceNoThrowExceptionOnFailureTest.java b/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceNoThrowExceptionOnFailureTest.java
index 4502020..41b0290 100644
--- a/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceNoThrowExceptionOnFailureTest.java
+++ b/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/AhcProduceNoThrowExceptionOnFailureTest.java
@@ -27,6 +27,7 @@ public class AhcProduceNoThrowExceptionOnFailureTest extends BaseAhcTest {
public void testAhcProduce() throws Exception {
getMockEndpoint("mock:result").expectedBodiesReceived("Does not work");
getMockEndpoint("mock:result").expectedHeaderReceived(Exchange.HTTP_RESPONSE_CODE, 500);
+ getMockEndpoint("mock:result").expectedHeaderReceived(Exchange.HTTP_RESPONSE_TEXT, "Server Error");
template.sendBody("direct:start", null);
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-http/src/main/java/org/apache/camel/component/http/HttpPollingConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpPollingConsumer.java b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpPollingConsumer.java
index 63603ea..403bb02 100644
--- a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpPollingConsumer.java
+++ b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpPollingConsumer.java
@@ -91,6 +91,7 @@ public class HttpPollingConsumer extends PollingConsumerSupport implements Servi
}
}
message.setHeader(Exchange.HTTP_RESPONSE_CODE, responseCode);
+ message.setHeader(Exchange.HTTP_RESPONSE_TEXT, method.getStatusText());
return exchange;
} catch (IOException e) {
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-http/src/main/java/org/apache/camel/component/http/HttpProducer.java
----------------------------------------------------------------------
diff --git a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpProducer.java b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpProducer.java
index 1519362..052b09e 100644
--- a/components/camel-http/src/main/java/org/apache/camel/component/http/HttpProducer.java
+++ b/components/camel-http/src/main/java/org/apache/camel/component/http/HttpProducer.java
@@ -173,6 +173,7 @@ public class HttpProducer extends DefaultProducer {
Message answer = exchange.getOut();
answer.setHeader(Exchange.HTTP_RESPONSE_CODE, responseCode);
+ answer.setHeader(Exchange.HTTP_RESPONSE_TEXT, method.getStatusText());
answer.setBody(response);
// propagate HTTP response headers
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpPollingConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpPollingConsumer.java b/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpPollingConsumer.java
index 758c1c9..ff74cee 100644
--- a/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpPollingConsumer.java
+++ b/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpPollingConsumer.java
@@ -100,6 +100,9 @@ public class HttpPollingConsumer extends PollingConsumerSupport implements Servi
}
}
message.setHeader(Exchange.HTTP_RESPONSE_CODE, responseCode);
+ if (response.getStatusLine() != null) {
+ message.setHeader(Exchange.HTTP_RESPONSE_TEXT, response.getStatusLine().getReasonPhrase());
+ }
return exchange;
} catch (IOException e) {
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpProducer.java
----------------------------------------------------------------------
diff --git a/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpProducer.java b/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpProducer.java
index c2790cc..8e52f6b 100644
--- a/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpProducer.java
+++ b/components/camel-http4/src/main/java/org/apache/camel/component/http4/HttpProducer.java
@@ -189,6 +189,9 @@ public class HttpProducer extends DefaultProducer {
Message answer = exchange.getOut();
answer.setHeader(Exchange.HTTP_RESPONSE_CODE, responseCode);
+ if (httpResponse.getStatusLine() != null) {
+ answer.setHeader(Exchange.HTTP_RESPONSE_TEXT, httpResponse.getStatusLine().getReasonPhrase());
+ }
answer.setBody(response);
// propagate HTTP response headers
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpMethodsTest.java
----------------------------------------------------------------------
diff --git a/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpMethodsTest.java b/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpMethodsTest.java
index 620e6cb..f9c7a5b 100644
--- a/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpMethodsTest.java
+++ b/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpMethodsTest.java
@@ -97,6 +97,7 @@ public class HttpMethodsTest extends BaseHttpTest {
Message out = exchange.getOut();
Map<String, Object> headers = out.getHeaders();
assertEquals(HttpStatus.SC_NOT_IMPLEMENTED, headers.get(Exchange.HTTP_RESPONSE_CODE));
+ assertEquals("Not Implemented", headers.get(Exchange.HTTP_RESPONSE_TEXT));
assertEquals("26", headers.get("Content-Length"));
assertNotNull("Should have Content-Type header", headers.get("Content-Type"));
assertEquals("PATCH method not supported", out.getBody(String.class));
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpRedirectTest.java
----------------------------------------------------------------------
diff --git a/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpRedirectTest.java b/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpRedirectTest.java
index 6acee6e..ffb8f84 100644
--- a/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpRedirectTest.java
+++ b/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpRedirectTest.java
@@ -101,6 +101,7 @@ public class HttpRedirectTest extends BaseHttpTest {
assertNotNull(out);
assertEquals(HttpStatus.SC_OK, out.getOut().getHeader(Exchange.HTTP_RESPONSE_CODE));
+ assertEquals("OK", out.getOut().getHeader(Exchange.HTTP_RESPONSE_TEXT));
assertEquals("Bye World", out.getOut().getBody(String.class));
}
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-jetty9/src/test/java/org/apache/camel/component/jetty/JettyCallHttpThenExceptionTest.java
----------------------------------------------------------------------
diff --git a/components/camel-jetty9/src/test/java/org/apache/camel/component/jetty/JettyCallHttpThenExceptionTest.java b/components/camel-jetty9/src/test/java/org/apache/camel/component/jetty/JettyCallHttpThenExceptionTest.java
index 7468083..b12c57e 100644
--- a/components/camel-jetty9/src/test/java/org/apache/camel/component/jetty/JettyCallHttpThenExceptionTest.java
+++ b/components/camel-jetty9/src/test/java/org/apache/camel/component/jetty/JettyCallHttpThenExceptionTest.java
@@ -42,6 +42,7 @@ public class JettyCallHttpThenExceptionTest extends BaseJettyTest {
assertNotNull(reply);
assertTrue(reply.getOut().getBody(String.class).startsWith("java.lang.IllegalArgumentException: I cannot do this"));
assertEquals(500, reply.getOut().getHeader(Exchange.HTTP_RESPONSE_CODE));
+ assertEquals("Server Error", reply.getOut().getHeader(Exchange.HTTP_RESPONSE_TEXT));
}
@Override
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/DefaultNettyHttpBinding.java
----------------------------------------------------------------------
diff --git a/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/DefaultNettyHttpBinding.java b/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/DefaultNettyHttpBinding.java
index bbdbfc3..863adce 100644
--- a/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/DefaultNettyHttpBinding.java
+++ b/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/DefaultNettyHttpBinding.java
@@ -265,7 +265,7 @@ public class DefaultNettyHttpBinding implements NettyHttpBinding, Cloneable {
LOG.trace("populateCamelHeaders: {}", response);
headers.put(Exchange.HTTP_RESPONSE_CODE, response.getStatus().getCode());
- headers.put(NettyHttpConstants.HTTP_RESPONSE_TEXT, response.getStatus().getReasonPhrase());
+ headers.put(Exchange.HTTP_RESPONSE_TEXT, response.getStatus().getReasonPhrase());
for (String name : response.headers().names()) {
// mapping the content-type
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/NettyHttpConstants.java
----------------------------------------------------------------------
diff --git a/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/NettyHttpConstants.java b/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/NettyHttpConstants.java
index df31626..ba14045 100644
--- a/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/NettyHttpConstants.java
+++ b/components/camel-netty-http/src/main/java/org/apache/camel/component/netty/http/NettyHttpConstants.java
@@ -16,6 +16,8 @@
*/
package org.apache.camel.component.netty.http;
+import org.apache.camel.Exchange;
+
/**
* Netty HTTP constants.
*/
@@ -23,7 +25,8 @@ public final class NettyHttpConstants {
public static final String CONTENT_TYPE_JAVA_SERIALIZED_OBJECT = "application/x-java-serialized-object";
public static final String CONTENT_TYPE_WWW_FORM_URLENCODED = "application/x-www-form-urlencoded";
- public static final String HTTP_RESPONSE_TEXT = "CamelHttpResponseText";
+ @Deprecated
+ public static final String HTTP_RESPONSE_TEXT = Exchange.HTTP_RESPONSE_TEXT;
public static final String HTTP_AUTHENTICATION = "CamelHttpAuthentication";
private NettyHttpConstants() {
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpFilterCamelHeadersTest.java
----------------------------------------------------------------------
diff --git a/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpFilterCamelHeadersTest.java b/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpFilterCamelHeadersTest.java
index bdc9c55..478fdb3 100644
--- a/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpFilterCamelHeadersTest.java
+++ b/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpFilterCamelHeadersTest.java
@@ -42,7 +42,7 @@ public class NettyHttpFilterCamelHeadersTest extends BaseNettyTest {
// except for the response code and response text
Map<String, Object> headers = out.getOut().getHeaders();
for (String key : headers.keySet()) {
- if (!key.equalsIgnoreCase(Exchange.HTTP_RESPONSE_CODE) && !key.equalsIgnoreCase(NettyHttpConstants.HTTP_RESPONSE_TEXT)) {
+ if (!key.equalsIgnoreCase(Exchange.HTTP_RESPONSE_CODE) && !key.equalsIgnoreCase(Exchange.HTTP_RESPONSE_TEXT)) {
assertTrue("Should not contain any Camel internal headers", !key.toLowerCase().startsWith("camel"));
}
}
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/DefaultNettyHttpBinding.java
----------------------------------------------------------------------
diff --git a/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/DefaultNettyHttpBinding.java b/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/DefaultNettyHttpBinding.java
index 29f6bdf..2b33170 100644
--- a/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/DefaultNettyHttpBinding.java
+++ b/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/DefaultNettyHttpBinding.java
@@ -267,7 +267,7 @@ public class DefaultNettyHttpBinding implements NettyHttpBinding, Cloneable {
LOG.trace("populateCamelHeaders: {}", response);
headers.put(Exchange.HTTP_RESPONSE_CODE, response.getStatus().code());
- headers.put(NettyHttpConstants.HTTP_RESPONSE_TEXT, response.getStatus().reasonPhrase());
+ headers.put(Exchange.HTTP_RESPONSE_TEXT, response.getStatus().reasonPhrase());
for (String name : response.headers().names()) {
// mapping the content-type
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/NettyHttpConstants.java
----------------------------------------------------------------------
diff --git a/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/NettyHttpConstants.java b/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/NettyHttpConstants.java
index 2dd5869..deae4e3 100644
--- a/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/NettyHttpConstants.java
+++ b/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/NettyHttpConstants.java
@@ -16,6 +16,8 @@
*/
package org.apache.camel.component.netty4.http;
+import org.apache.camel.Exchange;
+
/**
* Netty HTTP constants.
*/
@@ -23,7 +25,8 @@ public final class NettyHttpConstants {
public static final String CONTENT_TYPE_JAVA_SERIALIZED_OBJECT = "application/x-java-serialized-object";
public static final String CONTENT_TYPE_WWW_FORM_URLENCODED = "application/x-www-form-urlencoded";
- public static final String HTTP_RESPONSE_TEXT = "CamelHttpResponseText";
+ @Deprecated
+ public static final String HTTP_RESPONSE_TEXT = Exchange.HTTP_RESPONSE_TEXT;
public static final String HTTP_AUTHENTICATION = "CamelHttpAuthentication";
private NettyHttpConstants() {
http://git-wip-us.apache.org/repos/asf/camel/blob/a4828fa2/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpFilterCamelHeadersTest.java
----------------------------------------------------------------------
diff --git a/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpFilterCamelHeadersTest.java b/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpFilterCamelHeadersTest.java
index 62e4fcf..99c7a41 100644
--- a/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpFilterCamelHeadersTest.java
+++ b/components/camel-netty4-http/src/test/java/org/apache/camel/component/netty4/http/NettyHttpFilterCamelHeadersTest.java
@@ -42,7 +42,7 @@ public class NettyHttpFilterCamelHeadersTest extends BaseNettyTest {
// except for the response code and response text
Map<String, Object> headers = out.getOut().getHeaders();
for (String key : headers.keySet()) {
- if (!key.equalsIgnoreCase(Exchange.HTTP_RESPONSE_CODE) && !key.equalsIgnoreCase(NettyHttpConstants.HTTP_RESPONSE_TEXT)) {
+ if (!key.equalsIgnoreCase(Exchange.HTTP_RESPONSE_CODE) && !key.equalsIgnoreCase(Exchange.HTTP_RESPONSE_TEXT)) {
assertTrue("Should not contain any Camel internal headers", !key.toLowerCase().startsWith("camel"));
}
}