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 2017/06/01 18:19:59 UTC

[1/5] camel git commit: Optimise - Fix log component to be async routing friendly.

Repository: camel
Updated Branches:
  refs/heads/master 661f6f392 -> e53b636e3


Optimise - Fix log component to be async routing friendly.


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

Branch: refs/heads/master
Commit: 043b3bd8533482bf8e5e226db6f85ad6a27ffe6e
Parents: 661f6f3
Author: Claus Ibsen <da...@apache.org>
Authored: Thu Jun 1 19:29:10 2017 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Thu Jun 1 19:29:10 2017 +0200

----------------------------------------------------------------------
 .../org/apache/camel/component/log/LogProducer.java  | 15 +++++----------
 .../apache/camel/component/log/LogEndpointTest.java  |  5 +++--
 2 files changed, 8 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/043b3bd8/camel-core/src/main/java/org/apache/camel/component/log/LogProducer.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/log/LogProducer.java b/camel-core/src/main/java/org/apache/camel/component/log/LogProducer.java
index ce40c66..291d3a5 100644
--- a/camel-core/src/main/java/org/apache/camel/component/log/LogProducer.java
+++ b/camel-core/src/main/java/org/apache/camel/component/log/LogProducer.java
@@ -17,32 +17,27 @@
 package org.apache.camel.component.log;
 
 import org.apache.camel.AsyncCallback;
+import org.apache.camel.AsyncProcessor;
 import org.apache.camel.Endpoint;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
 import org.apache.camel.impl.DefaultAsyncProducer;
+import org.apache.camel.util.AsyncProcessorConverterHelper;
 
 /**
  * Log producer.
  */
 public class LogProducer extends DefaultAsyncProducer {
 
-    private final Processor logger;
+    private final AsyncProcessor logger;
 
     public LogProducer(Endpoint endpoint, Processor logger) {
         super(endpoint);
-        this.logger = logger;
+        this.logger = AsyncProcessorConverterHelper.convert(logger);
     }
 
     public boolean process(Exchange exchange, AsyncCallback callback) {
-        try {
-            logger.process(exchange);
-        } catch (Exception e) {
-            exchange.setException(e);
-        } finally {
-            callback.done(true);
-        }
-        return true;
+        return logger.process(exchange, callback);
     }
 
     public Processor getLogger() {

http://git-wip-us.apache.org/repos/asf/camel/blob/043b3bd8/camel-core/src/test/java/org/apache/camel/component/log/LogEndpointTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/component/log/LogEndpointTest.java b/camel-core/src/test/java/org/apache/camel/component/log/LogEndpointTest.java
index 010c13d..c53a293 100644
--- a/camel-core/src/test/java/org/apache/camel/component/log/LogEndpointTest.java
+++ b/camel-core/src/test/java/org/apache/camel/component/log/LogEndpointTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.component.log;
 
+import org.apache.camel.AsyncCallback;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
@@ -32,9 +33,9 @@ public class LogEndpointTest extends ContextTestSupport {
     private static class MyLogger extends CamelLogProcessor {
 
         @Override
-        public void process(Exchange exchange) throws Exception {
-            super.process(exchange);
+        public boolean process(Exchange exchange, AsyncCallback callback) {
             logged = exchange;
+            return super.process(exchange, callback);
         }
 
         @Override


[2/5] camel git commit: Polished

Posted by da...@apache.org.
Polished


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

Branch: refs/heads/master
Commit: d9977884ae3a0617479b9f0041487de22fee5a1f
Parents: 043b3bd
Author: Claus Ibsen <da...@apache.org>
Authored: Thu Jun 1 19:36:13 2017 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Thu Jun 1 19:36:13 2017 +0200

----------------------------------------------------------------------
 .../src/main/java/org/apache/camel/processor/ThroughputLogger.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/d9977884/camel-core/src/main/java/org/apache/camel/processor/ThroughputLogger.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/processor/ThroughputLogger.java b/camel-core/src/main/java/org/apache/camel/processor/ThroughputLogger.java
index 4c0ae34..896ad63 100644
--- a/camel-core/src/main/java/org/apache/camel/processor/ThroughputLogger.java
+++ b/camel-core/src/main/java/org/apache/camel/processor/ThroughputLogger.java
@@ -194,7 +194,7 @@ public class ThroughputLogger extends ServiceSupport implements AsyncProcessor,
         if (groupInterval != null) {
             ObjectHelper.notNull(camelContext, "CamelContext", this);
 
-            logSchedulerService = camelContext.getExecutorServiceManager().newScheduledThreadPool(this, "ThroughputLogger", 1);
+            logSchedulerService = camelContext.getExecutorServiceManager().newSingleThreadScheduledExecutor(this, "ThroughputLogger");
             Runnable scheduledLogTask = new ScheduledLogTask();
             LOG.info("Scheduling throughput log to run every " + groupInterval + " millis.");
             // must use fixed rate to have it trigger at every X interval


[3/5] camel git commit: Polished

Posted by da...@apache.org.
Polished


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

Branch: refs/heads/master
Commit: 413646ad765be1f5927f0b6b0c6d4b585a21f46f
Parents: d997788
Author: Claus Ibsen <da...@apache.org>
Authored: Thu Jun 1 19:38:42 2017 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Thu Jun 1 19:38:42 2017 +0200

----------------------------------------------------------------------
 .../src/main/java/org/apache/camel/util/StopWatch.java       | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/413646ad/camel-core/src/main/java/org/apache/camel/util/StopWatch.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/util/StopWatch.java b/camel-core/src/main/java/org/apache/camel/util/StopWatch.java
index e82adbc..831eb89 100644
--- a/camel-core/src/main/java/org/apache/camel/util/StopWatch.java
+++ b/camel-core/src/main/java/org/apache/camel/util/StopWatch.java
@@ -46,11 +46,11 @@ public final class StopWatch {
     /**
      * Creates the stop watch
      *
-     * @param started whether it should start immediately
+     * @param start whether it should start immediately
      */
-    public StopWatch(boolean started) {
-        if (started) {
-            restart();
+    public StopWatch(boolean start) {
+        if (start) {
+            this.start = System.currentTimeMillis();
         }
     }
 


[5/5] camel git commit: Polished

Posted by da...@apache.org.
Polished


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

Branch: refs/heads/master
Commit: e53b636e39f3cd20bea84c0b03ad748f84f10fab
Parents: 0d25645
Author: Claus Ibsen <da...@apache.org>
Authored: Thu Jun 1 20:11:37 2017 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Thu Jun 1 20:11:37 2017 +0200

----------------------------------------------------------------------
 .../java/org/apache/camel/component/timer/TimerEndpoint.java | 8 ++++----
 .../org/apache/camel/model/OptionalIdentifiedDefinition.java | 2 +-
 .../org/apache/camel/processor/CamelInternalProcessor.java   | 5 +++--
 .../src/main/java/org/apache/camel/util/StopWatch.java       | 2 +-
 4 files changed, 9 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/e53b636e/camel-core/src/main/java/org/apache/camel/component/timer/TimerEndpoint.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/timer/TimerEndpoint.java b/camel-core/src/main/java/org/apache/camel/component/timer/TimerEndpoint.java
index 580ee8a..c9e8ca9 100644
--- a/camel-core/src/main/java/org/apache/camel/component/timer/TimerEndpoint.java
+++ b/camel-core/src/main/java/org/apache/camel/component/timer/TimerEndpoint.java
@@ -97,7 +97,10 @@ public class TimerEndpoint extends DefaultEndpoint implements MultipleConsumersS
     @Override
     protected void doStart() throws Exception {
         super.doStart();
-        // do nothing, the timer will be set when the first consumer will request it
+        if (timerName == null) {
+            timerName = getEndpointUri();
+        }
+        // do nothing in regards to setTimer, the timer will be set when the first consumer will request it
     }
 
     @Override
@@ -113,9 +116,6 @@ public class TimerEndpoint extends DefaultEndpoint implements MultipleConsumersS
 
     @ManagedAttribute(description = "Timer Name")
     public String getTimerName() {
-        if (timerName == null) {
-            timerName = getEndpointUri();
-        }
         return timerName;
     }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/e53b636e/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java b/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
index ab346d8..e2c4290 100644
--- a/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
+++ b/camel-core/src/main/java/org/apache/camel/model/OptionalIdentifiedDefinition.java
@@ -157,7 +157,7 @@ public abstract class OptionalIdentifiedDefinition<T extends OptionalIdentifiedD
         if (id == null) {
             id = factory.createId(this);
         }
-        return getId();
+        return id;
     }
 
     public Boolean getCustomId() {

http://git-wip-us.apache.org/repos/asf/camel/blob/e53b636e/camel-core/src/main/java/org/apache/camel/processor/CamelInternalProcessor.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/processor/CamelInternalProcessor.java b/camel-core/src/main/java/org/apache/camel/processor/CamelInternalProcessor.java
index 82d26c1..1ba6c0c 100644
--- a/camel-core/src/main/java/org/apache/camel/processor/CamelInternalProcessor.java
+++ b/camel-core/src/main/java/org/apache/camel/processor/CamelInternalProcessor.java
@@ -633,17 +633,18 @@ public class CamelInternalProcessor extends DelegateAsyncProcessor {
     public static class UnitOfWorkProcessorAdvice implements CamelInternalProcessorAdvice<UnitOfWork> {
 
         private final RouteContext routeContext;
+        private final String routeId;
 
         public UnitOfWorkProcessorAdvice(RouteContext routeContext) {
             this.routeContext = routeContext;
+            this.routeId = routeContext.getRoute().idOrCreate(routeContext.getCamelContext().getNodeIdFactory());
         }
 
         @Override
         public UnitOfWork before(Exchange exchange) throws Exception {
             // if the exchange doesn't have from route id set, then set it if it originated
             // from this unit of work
-            if (routeContext != null && exchange.getFromRouteId() == null) {
-                String routeId = routeContext.getRoute().idOrCreate(routeContext.getCamelContext().getNodeIdFactory());
+            if (routeContext != null && exchange.getFromRouteId() == null && routeId != null) {
                 exchange.setFromRouteId(routeId);
             }
 

http://git-wip-us.apache.org/repos/asf/camel/blob/e53b636e/camel-core/src/main/java/org/apache/camel/util/StopWatch.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/util/StopWatch.java b/camel-core/src/main/java/org/apache/camel/util/StopWatch.java
index 831eb89..070256f 100644
--- a/camel-core/src/main/java/org/apache/camel/util/StopWatch.java
+++ b/camel-core/src/main/java/org/apache/camel/util/StopWatch.java
@@ -33,7 +33,7 @@ public final class StopWatch {
      * Starts the stop watch
      */
     public StopWatch() {
-        this(true);
+        this.start = System.currentTimeMillis();
     }
 
     /**


[4/5] camel git commit: Polished

Posted by da...@apache.org.
Polished


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

Branch: refs/heads/master
Commit: 0d25645a3cd7288e30aba178603bfec25f2a628e
Parents: 413646a
Author: Claus Ibsen <da...@apache.org>
Authored: Thu Jun 1 19:44:42 2017 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Thu Jun 1 19:44:42 2017 +0200

----------------------------------------------------------------------
 .../apache/camel/management/mbean/ManagedSendProcessor.java   | 1 -
 .../main/java/org/apache/camel/processor/SendProcessor.java   | 7 +++----
 2 files changed, 3 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/0d25645a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedSendProcessor.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedSendProcessor.java b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedSendProcessor.java
index 612abfa..4724220 100644
--- a/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedSendProcessor.java
+++ b/camel-core/src/main/java/org/apache/camel/management/mbean/ManagedSendProcessor.java
@@ -92,7 +92,6 @@ public class ManagedSendProcessor extends ManagedProcessor implements ManagedSen
             TabularData answer = new TabularDataSupport(CamelOpenMBeanTypes.endpointsUtilizationTabularType());
 
             // we only have 1 endpoint
-
             CompositeType ct = CamelOpenMBeanTypes.endpointsUtilizationCompositeType();
             String url = getDestination();
             Long hits = processor.getCounter();

http://git-wip-us.apache.org/repos/asf/camel/blob/0d25645a/camel-core/src/main/java/org/apache/camel/processor/SendProcessor.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/processor/SendProcessor.java b/camel-core/src/main/java/org/apache/camel/processor/SendProcessor.java
index 8f7c961..d933b59 100644
--- a/camel-core/src/main/java/org/apache/camel/processor/SendProcessor.java
+++ b/camel-core/src/main/java/org/apache/camel/processor/SendProcessor.java
@@ -143,10 +143,9 @@ public class SendProcessor extends ServiceSupport implements AsyncProcessor, Tra
             // record timing for sending the exchange using the producer
             final StopWatch watch = sw;
 
-            boolean sync = true;
             try {
                 LOG.debug(">>>> {} {}", destination, exchange);
-                sync = producer.process(exchange, new AsyncCallback() {
+                return producer.process(exchange, new AsyncCallback() {
                     @Override
                     public void done(boolean doneSync) {
                         try {
@@ -164,10 +163,10 @@ public class SendProcessor extends ServiceSupport implements AsyncProcessor, Tra
                 });
             } catch (Throwable throwable) {
                 exchange.setException(throwable);
-                callback.done(sync);
+                callback.done(true);
             }
 
-            return sync;
+            return true;
         }
 
         // send the exchange to the destination using the producer cache for the non optimized producers