Repository: camel
Updated Branches:
  refs/heads/master 2834779e5 -> 418c2e366


Allow to configure thread pool of spark


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

Branch: refs/heads/master
Commit: e413ac78b3622f74f012d6a10b5b5ed142ae948d
Parents: 2834779
Author: Claus Ibsen <[email protected]>
Authored: Sun Feb 21 14:12:35 2016 +0100
Committer: Claus Ibsen <[email protected]>
Committed: Sun Feb 21 14:12:35 2016 +0100

----------------------------------------------------------------------
 .../camel/component/sparkrest/CamelSpark.java   | 11 ++++++
 .../component/sparkrest/SparkComponent.java     | 36 ++++++++++++++++++++
 2 files changed, 47 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/e413ac78/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/CamelSpark.java
----------------------------------------------------------------------
diff --git 
a/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/CamelSpark.java
 
b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/CamelSpark.java
index 65b20a7..8cdfd41 100644
--- 
a/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/CamelSpark.java
+++ 
b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/CamelSpark.java
@@ -46,6 +46,17 @@ public final class CamelSpark {
     }
 
     /**
+     * Configures the thread pool
+     */
+    public static void threadPool(int minThreads, int maxThreads, int 
timeOutMillis) {
+        int min = minThreads > 0 ? minThreads : -1;
+        int max = maxThreads > 0 ? maxThreads : -1;
+        int idle = timeOutMillis > 0 ? timeOutMillis : -1;
+
+        Spark.threadPool(max, min, idle);
+    }
+
+    /**
      * Adds a Spark REST verb that routes to the given spark route
      *
      * @param verb   the HTTP verb

http://git-wip-us.apache.org/repos/asf/camel/blob/e413ac78/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/SparkComponent.java
----------------------------------------------------------------------
diff --git 
a/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/SparkComponent.java
 
b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/SparkComponent.java
index 19cabcd..30f3db8 100644
--- 
a/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/SparkComponent.java
+++ 
b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/SparkComponent.java
@@ -38,6 +38,9 @@ public class SparkComponent extends UriEndpointComponent 
implements RestConsumer
 
     private int port = 4567;
     private String ipAddress;
+    private int minThreads;
+    private int maxThreads;
+    private int timeOutMillis;
     private SparkConfiguration sparkConfiguration = new SparkConfiguration();
     private SparkBinding sparkBinding = new DefaultSparkBinding();
 
@@ -69,6 +72,39 @@ public class SparkComponent extends UriEndpointComponent 
implements RestConsumer
         this.ipAddress = ipAddress;
     }
 
+    public int getMinThreads() {
+        return minThreads;
+    }
+
+    /**
+     * Minimum number of threads in Spark thread-pool (shared globally)
+     */
+    public void setMinThreads(int minThreads) {
+        this.minThreads = minThreads;
+    }
+
+    public int getMaxThreads() {
+        return maxThreads;
+    }
+
+    /**
+     * Maximum number of threads in Spark thread-pool (shared globally)
+     */
+    public void setMaxThreads(int maxThreads) {
+        this.maxThreads = maxThreads;
+    }
+
+    public int getTimeOutMillis() {
+        return timeOutMillis;
+    }
+
+    /**
+     * Thread idle timeout in millis where threads that has been idle for a 
longer period will be terminated from the thread pool
+     */
+    public void setTimeOutMillis(int timeOutMillis) {
+        this.timeOutMillis = timeOutMillis;
+    }
+
     public SparkConfiguration getSparkConfiguration() {
         return sparkConfiguration;
     }

Reply via email to