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 2016/01/03 12:15:32 UTC

[1/4] camel git commit: Component docs - Add missing options and fixed invalid configurations

Repository: camel
Updated Branches:
  refs/heads/camel-2.16.x 367eb6573 -> b98c8ae65
  refs/heads/master 1e5bc2487 -> ec91dc5af


Component docs - Add missing options and fixed invalid configurations


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

Branch: refs/heads/master
Commit: 5633d3f32f4961705916c3a49bd880727231afe2
Parents: 1e5bc24
Author: Claus Ibsen <da...@apache.org>
Authored: Sun Jan 3 12:01:16 2016 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 3 12:01:16 2016 +0100

----------------------------------------------------------------------
 .../org/apache/camel/component/mock/MockComponent.java |  1 +
 .../org/apache/camel/component/mock/MockEndpoint.java  | 13 +++++++++++++
 .../camel/component/file/FileNoOpLockFileTest.java     |  2 +-
 .../stress/FileAsyncStressReadLockLockFileTest.java    |  2 +-
 4 files changed, 16 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/5633d3f3/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java b/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java
index 3bd356e..7f42a89 100644
--- a/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java
+++ b/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java
@@ -44,6 +44,7 @@ public class MockComponent extends UriEndpointComponent {
         if (value != null) {
             Processor reporter = new ThroughputLogger(new CamelLogger("org.apache.camel.component.mock:" + remaining), value);
             endpoint.setReporter(reporter);
+            endpoint.setReportGroup(value);
         }
         return endpoint;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/5633d3f3/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java b/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
index ab4801d..8c4157e 100644
--- a/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
+++ b/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
@@ -133,6 +133,8 @@ public class MockEndpoint extends DefaultEndpoint implements BrowsableEndpoint {
     private int retainFirst;
     @UriParam(label = "producer", defaultValue = "-1")
     private int retainLast;
+    @UriParam(label = "producer")
+    private int reportGroup;
     @UriParam(label = "producer,advanced", defaultValue = "true")
     private boolean copyOnExchange = true;
 
@@ -1219,6 +1221,17 @@ public class MockEndpoint extends DefaultEndpoint implements BrowsableEndpoint {
         this.retainLast = retainLast;
     }
 
+    public int isReportGroup() {
+        return reportGroup;
+    }
+
+    /**
+     * A number that is used to turn on throughput logging based on groups of the size.
+     */
+    public void setReportGroup(int reportGroup) {
+        this.reportGroup = reportGroup;
+    }
+
     public boolean isCopyOnExchange() {
         return copyOnExchange;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/5633d3f3/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java b/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java
index 248973a..afe7642 100644
--- a/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java
+++ b/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java
@@ -84,7 +84,7 @@ public class FileNoOpLockFileTest extends ContextTestSupport {
                     to("mock:report");
 
                 // for no locks
-                from("file://target/reports/notlocked/?noop=true&readLock=false").process(new MyNoopProcessor()).
+                from("file://target/reports/notlocked/?noop=true&readLock=none").process(new MyNoopProcessor()).
                     to("mock:report");
             }
         };

http://git-wip-us.apache.org/repos/asf/camel/blob/5633d3f3/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java b/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java
index 5668e3a..4aaf5a1 100644
--- a/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java
+++ b/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java
@@ -35,7 +35,7 @@ public class FileAsyncStressReadLockLockFileTest extends FileAsyncStressTest {
                 // leverage the fact that we can limit to max 50 files per poll
                 // this will result in polling again and potentially picking up files
                 // that already are in progress
-                from("file:target/filestress?maxMessagesPerPoll=50&readLock=lockFile").routeId("foo").noAutoStartup()
+                from("file:target/filestress?maxMessagesPerPoll=50&readLock=fileLock").routeId("foo").noAutoStartup()
                     .threads(10)
                     .process(new Processor() {
                         public void process(Exchange exchange) throws Exception {


[3/4] camel git commit: Camel catalog - Validate uris with time pattern is now supported

Posted by da...@apache.org.
Camel catalog - Validate uris with time pattern is now supported


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

Branch: refs/heads/master
Commit: ec91dc5afaffbfbdebabbeabf5fb0f3d4230571f
Parents: 5633d3f
Author: Claus Ibsen <da...@apache.org>
Authored: Sun Jan 3 12:13:53 2016 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 3 12:13:53 2016 +0100

----------------------------------------------------------------------
 .../camel/catalog/DefaultCamelCatalog.java      | 26 ++++--
 .../camel/catalog/TimePatternConverter.java     | 93 ++++++++++++++++++++
 .../apache/camel/catalog/CamelCatalogTest.java  |  4 +
 3 files changed, 117 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/ec91dc5a/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java
----------------------------------------------------------------------
diff --git a/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java b/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java
index fc63bd0..c4322f0 100644
--- a/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java
+++ b/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java
@@ -817,12 +817,7 @@ public class DefaultCamelCatalog implements CamelCatalog {
                 // is integer
                 if (!placeholder && isPropertyInteger(rows, name)) {
                     // value must be an integer
-                    boolean valid = false;
-                    try {
-                        valid = Integer.valueOf(value) != null;
-                    } catch (Exception e) {
-                        // ignore
-                    }
+                    boolean valid = validateInteger(value);
                     if (!valid) {
                         result.addInvalidInteger(name, value);
                     }
@@ -862,6 +857,25 @@ public class DefaultCamelCatalog implements CamelCatalog {
         return result;
     }
 
+    private static boolean validateInteger(String value) {
+        boolean valid = false;
+        try {
+            valid = Integer.valueOf(value) != null;
+        } catch (Exception e) {
+            // ignore
+        }
+        if (!valid) {
+            // it may be a time pattern, such as 5s for 5 seconds = 5000
+            try {
+                TimePatternConverter.toMilliSeconds(value);
+                valid = true;
+            } catch (Exception e) {
+                // ignore
+            }
+        }
+        return valid;
+    }
+
     @Override
     public Map<String, String> endpointProperties(String uri) throws URISyntaxException {
         // NOTICE: This logic is similar to org.apache.camel.util.EndpointHelper#endpointProperties

http://git-wip-us.apache.org/repos/asf/camel/blob/ec91dc5a/platforms/catalog/src/main/java/org/apache/camel/catalog/TimePatternConverter.java
----------------------------------------------------------------------
diff --git a/platforms/catalog/src/main/java/org/apache/camel/catalog/TimePatternConverter.java b/platforms/catalog/src/main/java/org/apache/camel/catalog/TimePatternConverter.java
new file mode 100644
index 0000000..e49ee89
--- /dev/null
+++ b/platforms/catalog/src/main/java/org/apache/camel/catalog/TimePatternConverter.java
@@ -0,0 +1,93 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.catalog;
+
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * This class is a copy from camel-core so we can use it independent to validate uris with time patterns
+ */
+public final class TimePatternConverter {
+
+    private static final String NUMBERS_ONLY_STRING_PATTERN = "^[-]?(\\d)+$";
+    private static final String REPLACEMENT_PATTERN = "[our|inute|econd](s)?";
+    private static final String HOUR_REGEX_PATTERN = "((\\d)*(\\d))[h|H]";
+    private static final String MINUTES_REGEX_PATTERN = "((\\d)*(\\d))[m|M]";
+    private static final String SECONDS_REGEX_PATTERN = "((\\d)*(\\d))[s|S]";
+
+    /**
+     * Utility classes should not have a public constructor.
+     */
+    private TimePatternConverter() {
+    }
+
+    public static long toMilliSeconds(String source) throws IllegalArgumentException {
+        long milliseconds = 0;
+        boolean foundFlag = false;
+        Matcher matcher;
+
+        matcher = createMatcher(NUMBERS_ONLY_STRING_PATTERN, source);
+        if (matcher.find()) {
+            // Note: This will also be used for regular numeric strings.
+            //       This String -> long converter will be used for all strings.
+            milliseconds = Long.valueOf(source);
+        } else {
+            matcher = createMatcher(REPLACEMENT_PATTERN, source);
+            String replacedSource = matcher.replaceAll("");
+
+            matcher = createMatcher(HOUR_REGEX_PATTERN, replacedSource);
+            if (matcher.find()) {
+                milliseconds = milliseconds + (3600000 * Long.valueOf(matcher.group(1)));
+                foundFlag = true;
+            }
+
+            matcher = createMatcher(MINUTES_REGEX_PATTERN, replacedSource);
+            if (matcher.find()) {
+                long minutes = Long.valueOf(matcher.group(1));
+                if ((minutes > 59) && foundFlag) {
+                    throw new IllegalArgumentException("Minutes should contain a valid value between 0 and 59: " + source);
+                }
+                foundFlag = true;
+                milliseconds = milliseconds + (60000 * minutes);
+            }
+
+            matcher = createMatcher(SECONDS_REGEX_PATTERN, replacedSource);
+            if (matcher.find()) {
+                long seconds = Long.valueOf(matcher.group(1));
+                if ((seconds > 59) && foundFlag) {
+                    throw new IllegalArgumentException("Seconds should contain a valid value between 0 and 59: " + source);
+                }
+                foundFlag = true;
+                milliseconds = milliseconds + (1000 * seconds);
+            }
+
+            // No pattern matched... initiating fallback check and conversion (if required).
+            // The source at this point may contain illegal values or special characters
+            if (!foundFlag) {
+                milliseconds = Long.valueOf(source);
+            }
+        }
+
+        return milliseconds;
+    }
+
+    private static Matcher createMatcher(String regexPattern, String source) {
+        Pattern pattern = Pattern.compile(regexPattern, Pattern.CASE_INSENSITIVE);
+        return pattern.matcher(source);
+    }
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/ec91dc5a/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
----------------------------------------------------------------------
diff --git a/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java b/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
index b58ec15..4387374 100644
--- a/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
+++ b/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
@@ -460,6 +460,10 @@ public class CamelCatalogTest {
         // dataset
         result = catalog.validateEndpointProperties("dataset:foo?minRate=50");
         assertTrue(result.isSuccess());
+
+        // time pattern
+        result = catalog.validateEndpointProperties("timer://foo?fixedRate=true&delay=0&period=2s");
+        assertTrue(result.isSuccess());
     }
 
     @Test


[4/4] camel git commit: Camel catalog - Validate uris with time pattern is now supported

Posted by da...@apache.org.
Camel catalog - Validate uris with time pattern is now supported


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

Branch: refs/heads/camel-2.16.x
Commit: b98c8ae650ad2425cd9fa37e67d1bd870799325a
Parents: 0ddf543
Author: Claus Ibsen <da...@apache.org>
Authored: Sun Jan 3 12:13:53 2016 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 3 12:15:23 2016 +0100

----------------------------------------------------------------------
 .../camel/catalog/DefaultCamelCatalog.java      | 26 ++++--
 .../camel/catalog/TimePatternConverter.java     | 93 ++++++++++++++++++++
 .../apache/camel/catalog/CamelCatalogTest.java  |  4 +
 3 files changed, 117 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/b98c8ae6/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java
----------------------------------------------------------------------
diff --git a/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java b/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java
index fc63bd0..c4322f0 100644
--- a/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java
+++ b/platforms/catalog/src/main/java/org/apache/camel/catalog/DefaultCamelCatalog.java
@@ -817,12 +817,7 @@ public class DefaultCamelCatalog implements CamelCatalog {
                 // is integer
                 if (!placeholder && isPropertyInteger(rows, name)) {
                     // value must be an integer
-                    boolean valid = false;
-                    try {
-                        valid = Integer.valueOf(value) != null;
-                    } catch (Exception e) {
-                        // ignore
-                    }
+                    boolean valid = validateInteger(value);
                     if (!valid) {
                         result.addInvalidInteger(name, value);
                     }
@@ -862,6 +857,25 @@ public class DefaultCamelCatalog implements CamelCatalog {
         return result;
     }
 
+    private static boolean validateInteger(String value) {
+        boolean valid = false;
+        try {
+            valid = Integer.valueOf(value) != null;
+        } catch (Exception e) {
+            // ignore
+        }
+        if (!valid) {
+            // it may be a time pattern, such as 5s for 5 seconds = 5000
+            try {
+                TimePatternConverter.toMilliSeconds(value);
+                valid = true;
+            } catch (Exception e) {
+                // ignore
+            }
+        }
+        return valid;
+    }
+
     @Override
     public Map<String, String> endpointProperties(String uri) throws URISyntaxException {
         // NOTICE: This logic is similar to org.apache.camel.util.EndpointHelper#endpointProperties

http://git-wip-us.apache.org/repos/asf/camel/blob/b98c8ae6/platforms/catalog/src/main/java/org/apache/camel/catalog/TimePatternConverter.java
----------------------------------------------------------------------
diff --git a/platforms/catalog/src/main/java/org/apache/camel/catalog/TimePatternConverter.java b/platforms/catalog/src/main/java/org/apache/camel/catalog/TimePatternConverter.java
new file mode 100644
index 0000000..e49ee89
--- /dev/null
+++ b/platforms/catalog/src/main/java/org/apache/camel/catalog/TimePatternConverter.java
@@ -0,0 +1,93 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.catalog;
+
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * This class is a copy from camel-core so we can use it independent to validate uris with time patterns
+ */
+public final class TimePatternConverter {
+
+    private static final String NUMBERS_ONLY_STRING_PATTERN = "^[-]?(\\d)+$";
+    private static final String REPLACEMENT_PATTERN = "[our|inute|econd](s)?";
+    private static final String HOUR_REGEX_PATTERN = "((\\d)*(\\d))[h|H]";
+    private static final String MINUTES_REGEX_PATTERN = "((\\d)*(\\d))[m|M]";
+    private static final String SECONDS_REGEX_PATTERN = "((\\d)*(\\d))[s|S]";
+
+    /**
+     * Utility classes should not have a public constructor.
+     */
+    private TimePatternConverter() {
+    }
+
+    public static long toMilliSeconds(String source) throws IllegalArgumentException {
+        long milliseconds = 0;
+        boolean foundFlag = false;
+        Matcher matcher;
+
+        matcher = createMatcher(NUMBERS_ONLY_STRING_PATTERN, source);
+        if (matcher.find()) {
+            // Note: This will also be used for regular numeric strings.
+            //       This String -> long converter will be used for all strings.
+            milliseconds = Long.valueOf(source);
+        } else {
+            matcher = createMatcher(REPLACEMENT_PATTERN, source);
+            String replacedSource = matcher.replaceAll("");
+
+            matcher = createMatcher(HOUR_REGEX_PATTERN, replacedSource);
+            if (matcher.find()) {
+                milliseconds = milliseconds + (3600000 * Long.valueOf(matcher.group(1)));
+                foundFlag = true;
+            }
+
+            matcher = createMatcher(MINUTES_REGEX_PATTERN, replacedSource);
+            if (matcher.find()) {
+                long minutes = Long.valueOf(matcher.group(1));
+                if ((minutes > 59) && foundFlag) {
+                    throw new IllegalArgumentException("Minutes should contain a valid value between 0 and 59: " + source);
+                }
+                foundFlag = true;
+                milliseconds = milliseconds + (60000 * minutes);
+            }
+
+            matcher = createMatcher(SECONDS_REGEX_PATTERN, replacedSource);
+            if (matcher.find()) {
+                long seconds = Long.valueOf(matcher.group(1));
+                if ((seconds > 59) && foundFlag) {
+                    throw new IllegalArgumentException("Seconds should contain a valid value between 0 and 59: " + source);
+                }
+                foundFlag = true;
+                milliseconds = milliseconds + (1000 * seconds);
+            }
+
+            // No pattern matched... initiating fallback check and conversion (if required).
+            // The source at this point may contain illegal values or special characters
+            if (!foundFlag) {
+                milliseconds = Long.valueOf(source);
+            }
+        }
+
+        return milliseconds;
+    }
+
+    private static Matcher createMatcher(String regexPattern, String source) {
+        Pattern pattern = Pattern.compile(regexPattern, Pattern.CASE_INSENSITIVE);
+        return pattern.matcher(source);
+    }
+}

http://git-wip-us.apache.org/repos/asf/camel/blob/b98c8ae6/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
----------------------------------------------------------------------
diff --git a/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java b/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
index b58ec15..4387374 100644
--- a/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
+++ b/platforms/catalog/src/test/java/org/apache/camel/catalog/CamelCatalogTest.java
@@ -460,6 +460,10 @@ public class CamelCatalogTest {
         // dataset
         result = catalog.validateEndpointProperties("dataset:foo?minRate=50");
         assertTrue(result.isSuccess());
+
+        // time pattern
+        result = catalog.validateEndpointProperties("timer://foo?fixedRate=true&delay=0&period=2s");
+        assertTrue(result.isSuccess());
     }
 
     @Test


[2/4] camel git commit: Component docs - Add missing options and fixed invalid configurations

Posted by da...@apache.org.
Component docs - Add missing options and fixed invalid configurations


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

Branch: refs/heads/camel-2.16.x
Commit: 0ddf543cb5940d066aa8ddee8fbf9795c9d695e2
Parents: 367eb65
Author: Claus Ibsen <da...@apache.org>
Authored: Sun Jan 3 12:01:16 2016 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Sun Jan 3 12:07:12 2016 +0100

----------------------------------------------------------------------
 .../org/apache/camel/component/mock/MockComponent.java |  1 +
 .../org/apache/camel/component/mock/MockEndpoint.java  | 13 +++++++++++++
 .../camel/component/file/FileNoOpLockFileTest.java     |  2 +-
 .../stress/FileAsyncStressReadLockLockFileTest.java    |  2 +-
 4 files changed, 16 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/0ddf543c/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java b/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java
index 3bd356e..7f42a89 100644
--- a/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java
+++ b/camel-core/src/main/java/org/apache/camel/component/mock/MockComponent.java
@@ -44,6 +44,7 @@ public class MockComponent extends UriEndpointComponent {
         if (value != null) {
             Processor reporter = new ThroughputLogger(new CamelLogger("org.apache.camel.component.mock:" + remaining), value);
             endpoint.setReporter(reporter);
+            endpoint.setReportGroup(value);
         }
         return endpoint;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/0ddf543c/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java b/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
index 672e902..b38a7cc 100644
--- a/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
+++ b/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
@@ -131,6 +131,8 @@ public class MockEndpoint extends DefaultEndpoint implements BrowsableEndpoint {
     private int retainFirst;
     @UriParam(label = "producer", defaultValue = "-1")
     private int retainLast;
+    @UriParam(label = "producer")
+    private int reportGroup;
     @UriParam(label = "producer,advanced", defaultValue = "true")
     private boolean copyOnExchange = true;
 
@@ -1217,6 +1219,17 @@ public class MockEndpoint extends DefaultEndpoint implements BrowsableEndpoint {
         this.retainLast = retainLast;
     }
 
+    public int isReportGroup() {
+        return reportGroup;
+    }
+
+    /**
+     * A number that is used to turn on throughput logging based on groups of the size.
+     */
+    public void setReportGroup(int reportGroup) {
+        this.reportGroup = reportGroup;
+    }
+
     public boolean isCopyOnExchange() {
         return copyOnExchange;
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/0ddf543c/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java b/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java
index 248973a..afe7642 100644
--- a/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java
+++ b/camel-core/src/test/java/org/apache/camel/component/file/FileNoOpLockFileTest.java
@@ -84,7 +84,7 @@ public class FileNoOpLockFileTest extends ContextTestSupport {
                     to("mock:report");
 
                 // for no locks
-                from("file://target/reports/notlocked/?noop=true&readLock=false").process(new MyNoopProcessor()).
+                from("file://target/reports/notlocked/?noop=true&readLock=none").process(new MyNoopProcessor()).
                     to("mock:report");
             }
         };

http://git-wip-us.apache.org/repos/asf/camel/blob/0ddf543c/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java b/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java
index 5668e3a..4aaf5a1 100644
--- a/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java
+++ b/camel-core/src/test/java/org/apache/camel/component/file/stress/FileAsyncStressReadLockLockFileTest.java
@@ -35,7 +35,7 @@ public class FileAsyncStressReadLockLockFileTest extends FileAsyncStressTest {
                 // leverage the fact that we can limit to max 50 files per poll
                 // this will result in polling again and potentially picking up files
                 // that already are in progress
-                from("file:target/filestress?maxMessagesPerPoll=50&readLock=lockFile").routeId("foo").noAutoStartup()
+                from("file:target/filestress?maxMessagesPerPoll=50&readLock=fileLock").routeId("foo").noAutoStartup()
                     .threads(10)
                     .process(new Processor() {
                         public void process(Exchange exchange) throws Exception {