You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2022/01/31 11:45:00 UTC

[camel] branch main updated: Camel-Caffeine: Minor Refactor

This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 62c257f  Camel-Caffeine: Minor Refactor
62c257f is described below

commit 62c257f7c2458967fb4df229890aee9a37662b42
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Mon Jan 31 12:42:48 2022 +0100

    Camel-Caffeine: Minor Refactor
---
 .../caffeine/cache/CaffeineCacheEndpoint.java      | 38 ++++++++++++----------
 .../caffeine/load/CaffeineLoadCacheEndpoint.java   | 24 ++------------
 2 files changed, 23 insertions(+), 39 deletions(-)

diff --git a/components/camel-caffeine/src/main/java/org/apache/camel/component/caffeine/cache/CaffeineCacheEndpoint.java b/components/camel-caffeine/src/main/java/org/apache/camel/component/caffeine/cache/CaffeineCacheEndpoint.java
index 521bfe5..ea08224 100644
--- a/components/camel-caffeine/src/main/java/org/apache/camel/component/caffeine/cache/CaffeineCacheEndpoint.java
+++ b/components/camel-caffeine/src/main/java/org/apache/camel/component/caffeine/cache/CaffeineCacheEndpoint.java
@@ -69,23 +69,7 @@ public class CaffeineCacheEndpoint extends DefaultEndpoint {
         if (cache == null) {
             if (configuration.isCreateCacheIfNotExist()) {
                 Caffeine<?, ?> builder = Caffeine.newBuilder();
-                if (configuration.getEvictionType() == EvictionType.SIZE_BASED) {
-                    builder.initialCapacity(configuration.getInitialCapacity());
-                    builder.maximumSize(configuration.getMaximumSize());
-                } else if (configuration.getEvictionType() == EvictionType.TIME_BASED) {
-                    builder.expireAfterAccess(configuration.getExpireAfterAccessTime(), TimeUnit.SECONDS);
-                    builder.expireAfterWrite(configuration.getExpireAfterWriteTime(), TimeUnit.SECONDS);
-                }
-                if (configuration.isStatsEnabled()) {
-                    if (ObjectHelper.isEmpty(configuration.getStatsCounter())) {
-                        builder.recordStats();
-                    } else {
-                        builder.recordStats(configuration::getStatsCounter);
-                    }
-                }
-                if (ObjectHelper.isNotEmpty(configuration.getRemovalListener())) {
-                    builder.removalListener(configuration.getRemovalListener());
-                }
+                defineBuilder(builder, configuration);
                 cache = builder.build();
             } else {
                 throw new IllegalArgumentException(
@@ -95,6 +79,26 @@ public class CaffeineCacheEndpoint extends DefaultEndpoint {
         super.doStart();
     }
 
+    public static void defineBuilder(Caffeine<?, ?> builder, CaffeineConfiguration configuration) {
+        if (configuration.getEvictionType() == EvictionType.SIZE_BASED) {
+            builder.initialCapacity(configuration.getInitialCapacity());
+            builder.maximumSize(configuration.getMaximumSize());
+        } else if (configuration.getEvictionType() == EvictionType.TIME_BASED) {
+            builder.expireAfterAccess(configuration.getExpireAfterAccessTime(), TimeUnit.SECONDS);
+            builder.expireAfterWrite(configuration.getExpireAfterWriteTime(), TimeUnit.SECONDS);
+        }
+        if (configuration.isStatsEnabled()) {
+            if (ObjectHelper.isEmpty(configuration.getStatsCounter())) {
+                builder.recordStats();
+            } else {
+                builder.recordStats(configuration::getStatsCounter);
+            }
+        }
+        if (ObjectHelper.isNotEmpty(configuration.getRemovalListener())) {
+            builder.removalListener(configuration.getRemovalListener());
+        }
+    }
+
     @Override
     protected void doStop() throws Exception {
         super.doStop();
diff --git a/components/camel-caffeine/src/main/java/org/apache/camel/component/caffeine/load/CaffeineLoadCacheEndpoint.java b/components/camel-caffeine/src/main/java/org/apache/camel/component/caffeine/load/CaffeineLoadCacheEndpoint.java
index c15e89e..70402ce 100644
--- a/components/camel-caffeine/src/main/java/org/apache/camel/component/caffeine/load/CaffeineLoadCacheEndpoint.java
+++ b/components/camel-caffeine/src/main/java/org/apache/camel/component/caffeine/load/CaffeineLoadCacheEndpoint.java
@@ -16,9 +16,6 @@
  */
 package org.apache.camel.component.caffeine.load;
 
-import java.util.concurrent.TimeUnit;
-
-import com.github.benmanes.caffeine.cache.Cache;
 import com.github.benmanes.caffeine.cache.Caffeine;
 import com.github.benmanes.caffeine.cache.LoadingCache;
 import org.apache.camel.Category;
@@ -27,14 +24,13 @@ import org.apache.camel.Consumer;
 import org.apache.camel.Processor;
 import org.apache.camel.Producer;
 import org.apache.camel.component.caffeine.CaffeineConfiguration;
-import org.apache.camel.component.caffeine.EvictionType;
+import org.apache.camel.component.caffeine.cache.CaffeineCacheEndpoint;
 import org.apache.camel.spi.Metadata;
 import org.apache.camel.spi.UriEndpoint;
 import org.apache.camel.spi.UriParam;
 import org.apache.camel.spi.UriPath;
 import org.apache.camel.support.CamelContextHelper;
 import org.apache.camel.support.DefaultEndpoint;
-import org.apache.camel.util.ObjectHelper;
 
 /**
  * Perform caching operations using Caffeine Cache with an attached CacheLoader.
@@ -70,23 +66,7 @@ public class CaffeineLoadCacheEndpoint extends DefaultEndpoint {
         if (cache == null) {
             if (configuration.isCreateCacheIfNotExist()) {
                 Caffeine<Object, Object> builder = Caffeine.newBuilder();
-                if (configuration.getEvictionType() == EvictionType.SIZE_BASED) {
-                    builder.initialCapacity(configuration.getInitialCapacity());
-                    builder.maximumSize(configuration.getMaximumSize());
-                } else if (configuration.getEvictionType() == EvictionType.TIME_BASED) {
-                    builder.expireAfterAccess(configuration.getExpireAfterAccessTime(), TimeUnit.SECONDS);
-                    builder.expireAfterWrite(configuration.getExpireAfterWriteTime(), TimeUnit.SECONDS);
-                }
-                if (configuration.isStatsEnabled()) {
-                    if (ObjectHelper.isEmpty(configuration.getStatsCounter())) {
-                        builder.recordStats();
-                    } else {
-                        builder.recordStats(configuration::getStatsCounter);
-                    }
-                }
-                if (ObjectHelper.isNotEmpty(configuration.getRemovalListener())) {
-                    builder.removalListener(configuration.getRemovalListener());
-                }
+                CaffeineCacheEndpoint.defineBuilder(builder, configuration);
                 cache = builder.build(configuration.getCacheLoader());
             } else {
                 throw new IllegalArgumentException(