Skip to content

Commit b1e766e

Browse files
committed
Started migrating to Caffeine
1 parent 8bd5cfc commit b1e766e

File tree

5 files changed

+15
-13
lines changed

5 files changed

+15
-13
lines changed

gradle/libs.versions.toml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ aws-dynamodblocal = "2.6.0"
88
awsSDK1 = "1.12.782"
99
awsSDK2 = "2.31.6"
1010
c3p0 = "0.10.2"
11+
caffine = "3.2.0"
1112
commons-io = "2.18.0"
1213
dagger = "2.56"
1314
dropwizard4 = "4.0.12"
@@ -36,6 +37,8 @@ aws-dynamodblocal = { module = "com.amazonaws:DynamoDBLocal", version.ref = "aws
3637
aws-sdk-ddb = { module = "com.amazonaws:aws-java-sdk-dynamodb", version.ref = "awsSDK1" }
3738
aws-sdk2-bom = { module = "software.amazon.awssdk:bom", version.ref = "awsSDK2" }
3839
c3p0 = { module = "com.mchange:c3p0", version.ref ="c3p0" }
40+
caffine = { module = "com.github.ben-manes.caffeine:caffeine", version.ref = "caffine" }
41+
caffine-jcache = { module = "com.github.ben-manes.caffeine:jcache", version.ref = "caffine" }
3942
commons-io = { module = "commons-io:commons-io", version.ref = "commons-io" }
4043
dagger = { module = "com.google.dagger:dagger", version.ref = "dagger" }
4144
dagger-compiler = { module = "com.google.dagger:dagger-compiler", version.ref = "dagger" }
@@ -74,6 +77,7 @@ testcontainers-postgres = { module = "org.testcontainers:postgresql", version.re
7477
javapoet = { module = "com.squareup:kotlinpoet-javapoet", version = "2.1.0" }
7578

7679
[bundles]
80+
caffine = ["caffine", "caffine-jcache"]
7781
dagger-annotation = ['javapoet', 'dagger-compiler']
7882
jackson = ['jackson-dataformat-yaml']
7983
logback = ['logback-classic', 'logback-core']

oop-mock-client/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ dependencies {
77
implementation(libs.slf4j.api)
88
implementation(libs.jackson.annotations)
99
implementation(libs.jackson.datatype.jdk8)
10-
implementation(libs.guava)
10+
implementation(libs.bundles.caffine)
1111
implementation(libs.commons.io)
1212

1313
implementation(libs.dagger)

oop-mock-client/src/main/java/com/codeheadsystems/oop/client/OopMockClientFactory.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,8 @@
1717
package com.codeheadsystems.oop.client;
1818

1919
import com.codeheadsystems.oop.client.dagger.OopMockClientAssistedFactory;
20-
import com.google.common.cache.CacheBuilder;
21-
import com.google.common.cache.CacheLoader;
22-
import com.google.common.cache.LoadingCache;
20+
import com.github.benmanes.caffeine.cache.Caffeine;
21+
import com.github.benmanes.caffeine.cache.LoadingCache;
2322
import javax.inject.Inject;
2423
import javax.inject.Singleton;
2524
import org.slf4j.Logger;
@@ -43,7 +42,7 @@ public class OopMockClientFactory {
4342
@Inject
4443
public OopMockClientFactory(final OopMockClientAssistedFactory assistedFactory) {
4544
LOGGER.info("OopMockClientFactory()");
46-
this.cache = CacheBuilder.newBuilder().build(CacheLoader.from(assistedFactory::create));
45+
this.cache = Caffeine.newBuilder().build(assistedFactory::create);
4746
}
4847

4948
/**
@@ -54,7 +53,7 @@ public OopMockClientFactory(final OopMockClientAssistedFactory assistedFactory)
5453
*/
5554
public OopMockClient generate(final Class<?> clazz) {
5655
LOGGER.info("generate({})", clazz);
57-
return cache.getUnchecked(clazz);
56+
return cache.get(clazz);
5857
}
5958

6059
}

oop-mock/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ dependencies {
77
implementation(libs.slf4j.api)
88
implementation(libs.jackson.annotations)
99
implementation(libs.jackson.datatype.jdk8)
10-
implementation(libs.guava)
10+
implementation(libs.bundles.caffine)
1111
implementation(libs.commons.io)
1212

1313
implementation(libs.dagger)

oop-mock/src/main/java/com/codeheadsystems/oop/OopMockFactory.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,8 @@
1818

1919
import com.codeheadsystems.oop.dagger.ClassOopMockFactory;
2020
import com.codeheadsystems.oop.mock.PassThroughOopMock;
21-
import com.google.common.cache.CacheBuilder;
22-
import com.google.common.cache.CacheLoader;
23-
import com.google.common.cache.LoadingCache;
21+
import com.github.benmanes.caffeine.cache.Caffeine;
22+
import com.github.benmanes.caffeine.cache.LoadingCache;
2423
import javax.inject.Inject;
2524
import javax.inject.Singleton;
2625
import org.slf4j.Logger;
@@ -48,9 +47,9 @@ public OopMockFactory(final OopMockConfiguration oopMockConfiguration,
4847
final PassThroughOopMock passThroughOopMock) {
4948
if (oopMockConfiguration.enabled()) {
5049
LOGGER.info("OopMockFactory() -> enabled");
51-
final LoadingCache<Class<?>, OopMock> oppMockCache = CacheBuilder.newBuilder()
52-
.build(CacheLoader.from(classOopMockFactory::create));
53-
generator = oppMockCache::getUnchecked;
50+
final LoadingCache<Class<?>, OopMock> oppMockCache = Caffeine.newBuilder()
51+
.build(classOopMockFactory::create);
52+
generator = oppMockCache::get;
5453
} else {
5554
LOGGER.info("OopMockFactory() -> disabled");
5655
generator = c -> passThroughOopMock;

0 commit comments

Comments
 (0)