This is an automated email from the ASF dual-hosted git repository. gnodet 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 8df4532 Make camel-jcache faster by removing hazelcast clustering 8df4532 is described below commit 8df45325c44f2b27784e8efb4e81b354f7e70708 Author: Guillaume Nodet <gno...@gmail.com> AuthorDate: Wed Mar 24 15:43:33 2021 +0100 Make camel-jcache faster by removing hazelcast clustering --- components/camel-jcache/pom.xml | 23 +--------------- .../jcache/JCacheComponentTestSupport.java | 2 ++ .../jcache/policy/JCachePolicyTestBase.java | 2 ++ .../jcache/policy/SpringJCachePolicyTest.java | 17 ++---------- .../JCacheAggregationRepositoryTestSupport.java | 2 ++ .../idempotent/JCacheIdempotentRepositoryTest.java | 2 ++ .../component/jcache/support/HazelcastTest.java | 32 ++++++++++++++++++++++ .../policy/hazelcast-spring.xml => hazelcast.xml} | 9 +++++- 8 files changed, 52 insertions(+), 37 deletions(-) diff --git a/components/camel-jcache/pom.xml b/components/camel-jcache/pom.xml index 8b8ab5f..2cb4aac 100644 --- a/components/camel-jcache/pom.xml +++ b/components/camel-jcache/pom.xml @@ -33,9 +33,9 @@ <description>Camel JCache support</description> <properties> + <camel.surefire.parallel>false</camel.surefire.parallel> </properties> - <dependencies> <dependency> <groupId>org.apache.camel</groupId> @@ -99,25 +99,4 @@ </dependency> </dependencies> - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-surefire-plugin</artifactId> - <configuration> - <systemProperties> - <property> - <name>hazelcast.named.jcache.instance</name> - <value>false</value> - </property> - <property> - <name>hazelcast.jcache.provider.type</name> - <value>server</value> - </property> - </systemProperties> - </configuration> - </plugin> - </plugins> - </build> - </project> diff --git a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/JCacheComponentTestSupport.java b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/JCacheComponentTestSupport.java index fcf0005..e3c63e4 100644 --- a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/JCacheComponentTestSupport.java +++ b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/JCacheComponentTestSupport.java @@ -22,10 +22,12 @@ import java.util.UUID; import javax.cache.Cache; +import org.apache.camel.component.jcache.support.HazelcastTest; import org.apache.camel.test.junit5.CamelTestSupport; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +@HazelcastTest class JCacheComponentTestSupport extends CamelTestSupport { protected static final Logger LOGGER = LoggerFactory.getLogger(JCacheComponentTestSupport.class); diff --git a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/policy/JCachePolicyTestBase.java b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/policy/JCachePolicyTestBase.java index 890fb39..22c0009 100644 --- a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/policy/JCachePolicyTestBase.java +++ b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/policy/JCachePolicyTestBase.java @@ -22,10 +22,12 @@ import javax.cache.Cache; import javax.cache.CacheManager; import javax.cache.Caching; +import org.apache.camel.component.jcache.support.HazelcastTest; import org.apache.camel.test.junit5.CamelTestSupport; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; +@HazelcastTest public class JCachePolicyTestBase extends CamelTestSupport { @BeforeEach diff --git a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/policy/SpringJCachePolicyTest.java b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/policy/SpringJCachePolicyTest.java index 2863b57..86913ea 100644 --- a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/policy/SpringJCachePolicyTest.java +++ b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/policy/SpringJCachePolicyTest.java @@ -18,35 +18,24 @@ package org.apache.camel.component.jcache.policy; import javax.cache.Cache; +import org.apache.camel.component.jcache.support.HazelcastTest; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.test.spring.junit5.CamelSpringTestSupport; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.context.support.AbstractApplicationContext; -import org.springframework.context.support.ClassPathXmlApplicationContext; import static org.apache.camel.component.jcache.policy.JCachePolicyTestBase.generateValue; import static org.apache.camel.component.jcache.policy.JCachePolicyTestBase.lookupCache; import static org.apache.camel.component.jcache.policy.JCachePolicyTestBase.randomString; import static org.junit.jupiter.api.Assertions.assertEquals; +@HazelcastTest public class SpringJCachePolicyTest extends CamelSpringTestSupport { @Override protected AbstractApplicationContext createApplicationContext() { - return new ClassPathXmlApplicationContext("org/apache/camel/component/jcache/policy/SpringJCachePolicyTest.xml"); - } - - @BeforeAll - public static void beforeAll() { - System.setProperty("hazelcast.config", "classpath:org/apache/camel/component/jcache/policy/hazelcast-spring.xml"); - } - - @AfterAll - public static void afterAll() { - System.clearProperty("hazelcast.config"); + return newAppContext("/org/apache/camel/component/jcache/policy/SpringJCachePolicyTest.xml"); } @BeforeEach diff --git a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/processor/aggregate/JCacheAggregationRepositoryTestSupport.java b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/processor/aggregate/JCacheAggregationRepositoryTestSupport.java index ceb04ea..fa655ca 100644 --- a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/processor/aggregate/JCacheAggregationRepositoryTestSupport.java +++ b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/processor/aggregate/JCacheAggregationRepositoryTestSupport.java @@ -17,8 +17,10 @@ package org.apache.camel.component.jcache.processor.aggregate; import org.apache.camel.component.jcache.JCacheConfiguration; +import org.apache.camel.component.jcache.support.HazelcastTest; import org.apache.camel.test.junit5.CamelTestSupport; +@HazelcastTest class JCacheAggregationRepositoryTestSupport extends CamelTestSupport { protected JCacheAggregationRepository createRepository(boolean optimistic) throws Exception { diff --git a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/processor/idempotent/JCacheIdempotentRepositoryTest.java b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/processor/idempotent/JCacheIdempotentRepositoryTest.java index bff7c04..dd7b42b 100644 --- a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/processor/idempotent/JCacheIdempotentRepositoryTest.java +++ b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/processor/idempotent/JCacheIdempotentRepositoryTest.java @@ -21,6 +21,7 @@ import javax.cache.Cache; import org.apache.camel.component.jcache.JCacheConfiguration; import org.apache.camel.component.jcache.JCacheHelper; import org.apache.camel.component.jcache.JCacheManager; +import org.apache.camel.component.jcache.support.HazelcastTest; import org.apache.camel.test.junit5.CamelTestSupport; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; @@ -31,6 +32,7 @@ import org.slf4j.LoggerFactory; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; +@HazelcastTest public class JCacheIdempotentRepositoryTest extends CamelTestSupport { private static final Logger LOGGER = LoggerFactory.getLogger(JCacheIdempotentRepositoryTest.class); diff --git a/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/support/HazelcastTest.java b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/support/HazelcastTest.java new file mode 100644 index 0000000..411d0cb --- /dev/null +++ b/components/camel-jcache/src/test/java/org/apache/camel/component/jcache/support/HazelcastTest.java @@ -0,0 +1,32 @@ +package org.apache.camel.component.jcache.support; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import org.junit.jupiter.api.extension.AfterAllCallback; +import org.junit.jupiter.api.extension.BeforeAllCallback; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.jupiter.api.extension.ExtensionContext; + +@ExtendWith(HazelcastTest.HazelcastTestExtension.class) +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) +public @interface HazelcastTest { + + String value() default "classpath:hazelcast.xml"; + + class HazelcastTestExtension implements BeforeAllCallback, AfterAllCallback { + @Override + public void beforeAll(ExtensionContext context) throws Exception { + System.setProperty("hazelcast.named.jcache.instance", "false"); + System.setProperty("hazelcast.jcache.provider.type", "member"); + } + + @Override + public void afterAll(ExtensionContext context) throws Exception { + } + + } +} diff --git a/components/camel-jcache/src/test/resources/org/apache/camel/component/jcache/policy/hazelcast-spring.xml b/components/camel-jcache/src/test/resources/hazelcast.xml similarity index 86% rename from components/camel-jcache/src/test/resources/org/apache/camel/component/jcache/policy/hazelcast-spring.xml rename to components/camel-jcache/src/test/resources/hazelcast.xml index add97eb..c10fcfb 100644 --- a/components/camel-jcache/src/test/resources/org/apache/camel/component/jcache/policy/hazelcast-spring.xml +++ b/components/camel-jcache/src/test/resources/hazelcast.xml @@ -20,7 +20,7 @@ <hazelcast xmlns="http://www.hazelcast.com/schema/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.hazelcast.com/schema/config - http://www.hazelcast.com/schema/config/hazelcast-config-4.0.xsd"> + http://www.hazelcast.com/schema/config/hazelcast-config-4.1.xsd"> <cache name="spring"> <key-type class-name="java.lang.String"/> @@ -30,4 +30,11 @@ </expiry-policy-factory> </cache> + <network> + <port auto-increment="true" port-count="100">5701</port> + <join> + <auto-detection enabled="false"/> + </join> + </network> + </hazelcast> \ No newline at end of file