CAMEL-7014 Added connectionTimeout option for camel-restlet producer
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/597e1080 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/597e1080 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/597e1080 Branch: refs/heads/master Commit: 597e108019b5032b4de79462a0ba0c00672ca5ad Parents: ad2e73b Author: Willem Jiang <willem.ji...@gmail.com> Authored: Mon Jan 6 14:37:01 2014 +0800 Committer: Willem Jiang <willem.ji...@gmail.com> Committed: Mon Jan 6 14:37:01 2014 +0800 ---------------------------------------------------------------------- .../camel/component/restlet/RestletEndpoint.java | 14 ++++++++++++-- .../camel/component/restlet/RestletProducer.java | 2 ++ 2 files changed, 14 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/597e1080/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletEndpoint.java ---------------------------------------------------------------------- diff --git a/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletEndpoint.java b/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletEndpoint.java index 2caccd1..24ca7f9 100644 --- a/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletEndpoint.java +++ b/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletEndpoint.java @@ -39,7 +39,8 @@ public class RestletEndpoint extends DefaultEndpoint implements HeaderFilterStra private static final int DEFAULT_PORT = 80; private static final String DEFAULT_PROTOCOL = "http"; private static final String DEFAULT_HOST = "localhost"; - private static final int DEFAULT_SOCKETTIMEOUT = 30000; + private static final int DEFAULT_SOCKET_TIMEOUT = 30000; + private static final int DEFAULT_CONNECT_TIMEOUT = 30000; private Method restletMethod = Method.GET; @@ -50,7 +51,8 @@ public class RestletEndpoint extends DefaultEndpoint implements HeaderFilterStra private String protocol = DEFAULT_PROTOCOL; private String host = DEFAULT_HOST; private int port = DEFAULT_PORT; - private int socketTimeout = DEFAULT_SOCKETTIMEOUT; + private int socketTimeout = DEFAULT_SOCKET_TIMEOUT; + private int connectTimeout = DEFAULT_CONNECT_TIMEOUT; private String uriPattern; // Optional and for consumer only. This allows a single route to service multiple URI patterns. @@ -133,6 +135,14 @@ public class RestletEndpoint extends DefaultEndpoint implements HeaderFilterStra public void setSocketTimeout(int socketTimeout) { this.socketTimeout = socketTimeout; } + + public int getConnectTimeout() { + return connectTimeout; + } + + public void setConnectTimeout(int connectTimeout) { + this.connectTimeout = connectTimeout; + } public String getUriPattern() { return uriPattern; http://git-wip-us.apache.org/repos/asf/camel/blob/597e1080/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java ---------------------------------------------------------------------- diff --git a/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java b/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java index 2cad21f..3e9f8ff 100644 --- a/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java +++ b/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/RestletProducer.java @@ -49,7 +49,9 @@ public class RestletProducer extends DefaultAsyncProducer { this.throwException = endpoint.isThrowExceptionOnFailure(); client = new Client(endpoint.getProtocol()); client.setContext(new Context()); + client.setConnectTimeout(100); client.getContext().getParameters().add("socketTimeout", String.valueOf(endpoint.getSocketTimeout())); + client.getContext().getParameters().add("socketConnectTimeoutMs", String.valueOf(endpoint.getSocketTimeout())); } @Override