Repository: camel Updated Branches: refs/heads/master cd95b8b3d -> 8962627fb
CAMEL-8716: camel-http - Make it easier to extend DefaultHttpBinding and have default no-arg ctr Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/9305806d Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/9305806d Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/9305806d Branch: refs/heads/master Commit: 9305806db14c8924f369b10d4d5c3dcc61084f5e Parents: 0dbc097 Author: Claus Ibsen <[email protected]> Authored: Wed Apr 29 09:21:49 2015 +0200 Committer: Claus Ibsen <[email protected]> Committed: Wed Apr 29 10:26:31 2015 +0200 ---------------------------------------------------------------------- .../component/jetty9/AttachmentHttpBinding.java | 10 ++--- .../component/jetty9/JettyContentExchange9.java | 43 +------------------- .../component/jetty9/JettyHttpEndpoint9.java | 4 +- 3 files changed, 8 insertions(+), 49 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/9305806d/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/AttachmentHttpBinding.java ---------------------------------------------------------------------- diff --git a/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/AttachmentHttpBinding.java b/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/AttachmentHttpBinding.java index 14e45a9..a7d8167 100644 --- a/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/AttachmentHttpBinding.java +++ b/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/AttachmentHttpBinding.java @@ -20,20 +20,19 @@ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.Collection; - import javax.activation.DataHandler; import javax.activation.DataSource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.Part; +import org.apache.camel.RuntimeCamelException; import org.apache.camel.component.http.DefaultHttpBinding; -import org.apache.camel.component.http.HttpEndpoint; import org.apache.camel.component.http.HttpMessage; import org.eclipse.jetty.util.MultiPartInputStreamParser; final class AttachmentHttpBinding extends DefaultHttpBinding { - AttachmentHttpBinding(HttpEndpoint endpoint) { - super(endpoint); + + AttachmentHttpBinding() { } @Override @@ -54,9 +53,8 @@ final class AttachmentHttpBinding extends DefaultHttpBinding { message.addAttachment(part.getName(), new DataHandler(ds)); } } catch (Exception e) { - e.printStackTrace(); + throw new RuntimeCamelException("Cannot populate attachments", e); } - } } http://git-wip-us.apache.org/repos/asf/camel/blob/9305806d/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyContentExchange9.java ---------------------------------------------------------------------- diff --git a/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyContentExchange9.java b/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyContentExchange9.java index 3ee2072..d9f7e14 100644 --- a/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyContentExchange9.java +++ b/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyContentExchange9.java @@ -123,17 +123,11 @@ public class JettyContentExchange9 implements JettyContentExchange { doTaskCompleted(ex); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#getBody() - */ public byte[] getBody() { // must return the content as raw bytes return getResponseContentBytes(); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#getUrl() - */ public String getUrl() { try { return this.request.getURI().toURL().toExternalForm(); @@ -170,72 +164,43 @@ public class JettyContentExchange9 implements JettyContentExchange { } } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#setRequestContentType(java.lang.String) - */ public void setRequestContentType(String contentType) { this.requestContentType = contentType; } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#getResponseStatus() - */ public int getResponseStatus() { return this.response.getStatus(); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#setMethod(java.lang.String) - */ public void setMethod(String method) { this.request.method(method); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#setTimeout(long) - */ public void setTimeout(long timeout) { this.request.timeout(timeout, TimeUnit.MILLISECONDS); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#setURL(java.lang.String) - */ public void setURL(String url) { this.request = client.newRequest(url); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#setRequestContent(byte[]) - */ public void setRequestContent(byte[] byteArray) { this.request.content(new BytesContentProvider(byteArray), this.requestContentType); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#setRequestContent(java.lang.String, java.lang.String) - */ public void setRequestContent(String data, String charset) throws UnsupportedEncodingException { StringContentProvider cp = charset != null ? new StringContentProvider(data, charset) : new StringContentProvider(data); this.request.content(cp, this.requestContentType); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#setRequestContent(java.io.InputStream) - */ + public void setRequestContent(InputStream ins) { this.request.content(new InputStreamContentProvider(ins), this.requestContentType); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#addRequestHeader(java.lang.String, java.lang.String) - */ public void addRequestHeader(String key, String s) { this.request.header(key, s); } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#send(org.eclipse.jetty.client.HttpClient) - */ public void send(HttpClient client) throws IOException { org.eclipse.jetty.client.api.Request.Listener listener = new Request.Listener.Adapter() { @@ -268,16 +233,10 @@ public class JettyContentExchange9 implements JettyContentExchange { this.response = response; } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#getResponseContentBytes() - */ public byte[] getResponseContentBytes() { return responseContent; } - /* (non-Javadoc) - * @see org.apache.camel.component.jetty.JettyContentExchangeI#getResponseHeaders() - */ public Map<String, Collection<String>> getResponseHeaders() { final HttpFields f = response.getHeaders(); Map<String, Collection<String>> ret = new TreeMap<String, Collection<String>>(String.CASE_INSENSITIVE_ORDER); http://git-wip-us.apache.org/repos/asf/camel/blob/9305806d/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyHttpEndpoint9.java ---------------------------------------------------------------------- diff --git a/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyHttpEndpoint9.java b/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyHttpEndpoint9.java index fad0440..a29ad1a 100644 --- a/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyHttpEndpoint9.java +++ b/components/camel-jetty9/src/main/java/org/apache/camel/component/jetty9/JettyHttpEndpoint9.java @@ -37,7 +37,9 @@ public class JettyHttpEndpoint9 extends JettyHttpEndpoint { @Override public HttpBinding getBinding() { if (this.binding == null) { - this.binding = new AttachmentHttpBinding(this); + this.binding = new AttachmentHttpBinding(); + this.binding.setTransferException(isTransferException()); + this.binding.setHeaderFilterStrategy(getHeaderFilterStrategy()); } return this.binding; }
