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