This is an automated email from the ASF dual-hosted git repository. lburgazzoli pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push: new bf86722 camel-infinispan: move infinispan manger lifecycle from consumer/producer to endpoint bf86722 is described below commit bf867226bf63eab153fe33f1151619d6e9bf5820 Author: lburgazzoli <lburgazz...@gmail.com> AuthorDate: Sun Jul 21 22:47:09 2019 +0200 camel-infinispan: move infinispan manger lifecycle from consumer/producer to endpoint --- .../component/infinispan/InfinispanConsumer.java | 6 +++--- .../component/infinispan/InfinispanEndpoint.java | 20 +++++++++++++++--- .../component/infinispan/InfinispanProducer.java | 24 ++++++---------------- 3 files changed, 26 insertions(+), 24 deletions(-) diff --git a/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanConsumer.java b/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanConsumer.java index b56160a..4f41c5e 100644 --- a/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanConsumer.java +++ b/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanConsumer.java @@ -41,11 +41,11 @@ public class InfinispanConsumer extends DefaultConsumer { private BasicCache<Object, Object> cache; private ContinuousQuery<Object, Object> continuousQuery; - public InfinispanConsumer(InfinispanEndpoint endpoint, Processor processor, String cacheName, InfinispanConfiguration configuration) { + public InfinispanConsumer(InfinispanEndpoint endpoint, Processor processor, String cacheName, InfinispanManager manager, InfinispanConfiguration configuration) { super(endpoint, processor); this.cacheName = cacheName; this.configuration = configuration; - this.manager = new InfinispanManager(endpoint.getCamelContext(), configuration); + this.manager = manager; } public void processEvent(String eventType, boolean isPre, String cacheName, Object key) { @@ -137,7 +137,7 @@ public class InfinispanConsumer extends DefaultConsumer { public void resultJoining(Object key, Object value) { processEvent(InfinispanConstants.CACHE_ENTRY_JOINING, false, cacheName, key, value); } - + @Override public void resultUpdated(Object key, Object value) { processEvent(InfinispanConstants.CACHE_ENTRY_UPDATED, false, cacheName, key, value); diff --git a/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanEndpoint.java b/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanEndpoint.java index 74f5bad..813f79d 100644 --- a/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanEndpoint.java +++ b/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanEndpoint.java @@ -34,24 +34,38 @@ public class InfinispanEndpoint extends DefaultEndpoint { @UriPath(description = "The cache to use") @Metadata(required = true) private final String cacheName; - @UriParam private final InfinispanConfiguration configuration; + private final InfinispanManager manager; + public InfinispanEndpoint(String uri, String cacheName, InfinispanComponent component, InfinispanConfiguration configuration) { super(uri, component); this.cacheName = cacheName; this.configuration = configuration; + this.manager = new InfinispanManager(component.getCamelContext(), configuration); + } + + @Override + protected void doStart() throws Exception { + manager.start(); + super.doStart(); + } + + @Override + protected void doStop() throws Exception { + super.doStop(); + manager.stop(); } @Override public Producer createProducer() throws Exception { - return new InfinispanProducer(this, cacheName, configuration); + return new InfinispanProducer(this, cacheName, manager, configuration); } @Override public Consumer createConsumer(Processor processor) throws Exception { - return new InfinispanConsumer(this, processor, cacheName, configuration); + return new InfinispanConsumer(this, processor, cacheName, manager, configuration); } public String getCacheName() { diff --git a/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanProducer.java b/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanProducer.java index 4873ac2..2f36550 100644 --- a/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanProducer.java +++ b/components/camel-infinispan/src/main/java/org/apache/camel/component/infinispan/InfinispanProducer.java @@ -33,24 +33,12 @@ public class InfinispanProducer extends HeaderSelectorProducer { private final InfinispanConfiguration configuration; private final InfinispanManager manager; - public InfinispanProducer(InfinispanEndpoint endpoint, String cacheName, InfinispanConfiguration configuration) { + public InfinispanProducer(InfinispanEndpoint endpoint, String cacheName, InfinispanManager manager, InfinispanConfiguration configuration) { super(endpoint, InfinispanConstants.OPERATION, () -> configuration.getOperationOrDefault().name(), false); this.cacheName = cacheName; this.configuration = configuration; - this.manager = new InfinispanManager(endpoint.getCamelContext(), configuration); - } - - @Override - protected void doStart() throws Exception { - super.doStart(); - manager.start(); - } - - @Override - protected void doStop() throws Exception { - manager.stop(); - super.doStop(); + this.manager = manager; } // ************************************ @@ -216,7 +204,7 @@ public class InfinispanProducer extends HeaderSelectorProducer { setResult(message, result); } - + @InvokeOnHeader("GETORDEFAULT") void onGetOrDefault(Message message) { final BasicCache<Object, Object> cache = manager.getCache(message, this.cacheName); @@ -362,7 +350,7 @@ public class InfinispanProducer extends HeaderSelectorProducer { } } - + @InvokeOnHeader("SIZE") void onSize(Message message) { final BasicCache<Object, Object> cache = manager.getCache(message, this.cacheName); @@ -406,7 +394,7 @@ public class InfinispanProducer extends HeaderSelectorProducer { setResult(message, result); } - + @InvokeOnHeader("COMPUTE") void onCompute(Message message) { final BasicCache<Object, Object> cache = manager.getCache(message, this.cacheName); @@ -414,7 +402,7 @@ public class InfinispanProducer extends HeaderSelectorProducer { final Object result = cache.compute(key, configuration.getRemappingFunction()); setResult(message, result); } - + @InvokeOnHeader("COMPUTEASYNC") void onComputeAsync(Message message) { final BasicCache<Object, Object> cache = manager.getCache(message, this.cacheName);