keycloak-memoizeit

replaced multicache for caffeine

7/21/2020 5:53:37 AM

Details

diff --git a/common/src/main/java/org/keycloak/common/util/DerUtils.java b/common/src/main/java/org/keycloak/common/util/DerUtils.java
index 76477e5..530d0fe 100755
--- a/common/src/main/java/org/keycloak/common/util/DerUtils.java
+++ b/common/src/main/java/org/keycloak/common/util/DerUtils.java
@@ -75,7 +75,7 @@ public final class DerUtils {
         return cert;
     }
 
-// public static SingleCache<Parameters, PrivateKey> decodePrivateKey = new SingleCache<>("DerUtils.decodePrivateKey");
+// public static CaffeineSingleCache<Parameters, PrivateKey> decodePrivateKey = new CaffeineSingleCache<>("DerUtils.decodePrivateKey", 120000);
 
     public static PrivateKey decodePrivateKey(byte[] der) {//throws NoSuchAlgorithmException, InvalidKeySpecException, NoSuchProviderException {
 // return decodePrivateKey.computeIfAbsent(new Parameters(der),  () -> {
diff --git a/common/src/main/java/org/keycloak/common/util/PemUtils.java b/common/src/main/java/org/keycloak/common/util/PemUtils.java
index 1654e1a..e8bb2f9 100755
--- a/common/src/main/java/org/keycloak/common/util/PemUtils.java
+++ b/common/src/main/java/org/keycloak/common/util/PemUtils.java
@@ -87,7 +87,7 @@ public final class PemUtils {
         }
     }
 
-// public static SingleCache<String, PrivateKey> decodePrivateKey = new SingleCache<>("PemUtils.decodePrivateKey");
+// public static CaffeineSingleCache<String, PrivateKey> decodePrivateKey = new CaffeineSingleCache<>("PemUtils.decodePrivateKey", 120000);
 
     /**
      * Decode a Private Key from a PEM string
diff --git a/server-spi-private/src/main/java/org/keycloak/authorization/AuthorizationProvider.java b/server-spi-private/src/main/java/org/keycloak/authorization/AuthorizationProvider.java
index 5739255..7c4fae3 100644
--- a/server-spi-private/src/main/java/org/keycloak/authorization/AuthorizationProvider.java
+++ b/server-spi-private/src/main/java/org/keycloak/authorization/AuthorizationProvider.java
@@ -439,7 +439,7 @@ public final class AuthorizationProvider implements Provider {
         };
     }
 
-public static SingleCache<Parameters, Resource> findByName = new SingleCache<>("08#static-single:AuthorizationProvider.findByName");
+public static CaffeineSingleCache<Parameters, Resource> findByName = new CaffeineSingleCache<>("08#static-single:AuthorizationProvider.findByName", 120000);
 
     private ResourceStore createResourceStoreWrapper(StoreFactory storeFactory) {
         return new ResourceStore() {
diff --git a/server-spi-private/src/main/java/org/keycloak/credential/hash/Pbkdf2PasswordHashProvider.java b/server-spi-private/src/main/java/org/keycloak/credential/hash/Pbkdf2PasswordHashProvider.java
index 4b360b1..af07135 100644
--- a/server-spi-private/src/main/java/org/keycloak/credential/hash/Pbkdf2PasswordHashProvider.java
+++ b/server-spi-private/src/main/java/org/keycloak/credential/hash/Pbkdf2PasswordHashProvider.java
@@ -83,7 +83,7 @@ public class Pbkdf2PasswordHashProvider implements PasswordHashProvider {
     }
 
 
-public static SingleCache<Parameters, String> encode1 = new SingleCache<>("02#static-single:Pbkdf2PasswordHashProvider.encode1");
+public static CaffeineSingleCache<Parameters, String> encode1 = new CaffeineSingleCache<>("02#static-single:Pbkdf2PasswordHashProvider.encode1", 120000);
 
     @Override
     public String encode(String rawPassword, int iterations) {
@@ -97,7 +97,7 @@ return encode1.computeIfAbsent(new Parameters(rawPassword, iterations), () -> {
 }, 120000);
     }
 
-public static SingleCache<Parameters, Boolean> verify = new SingleCache<>("01#static-single:Pbkdf2PasswordHashProvider.verify");
+public static CaffeineSingleCache<Parameters, Boolean> verify = new CaffeineSingleCache<>("01#static-single:Pbkdf2PasswordHashProvider.verify", 120000);
 
     @Override
     public boolean verify(String rawPassword, CredentialModel credential) {
@@ -118,7 +118,7 @@ return verify.computeIfAbsent(new Parameters(rawPassword, credential), () -> {
     public void close() {
     }
 
-public static SingleCache<Parameters, String> encode2 = new SingleCache<>("02#static-single:Pbkdf2PasswordHashProvider.encode2");
+public static CaffeineSingleCache<Parameters, String> encode2 = new CaffeineSingleCache<>("02#static-single:Pbkdf2PasswordHashProvider.encode2", 120000);
 
     private String encode(String rawPassword, int iterations, byte[] salt, int derivedKeySize) {
 return encode2.computeIfAbsent(new Parameters(rawPassword, iterations, salt, derivedKeySize), () -> {
diff --git a/server-spi-private/src/main/java/org/keycloak/models/session/PersistentAuthenticatedClientSessionAdapter.java b/server-spi-private/src/main/java/org/keycloak/models/session/PersistentAuthenticatedClientSessionAdapter.java
index ae0d0c4..e1c90a3 100644
--- a/server-spi-private/src/main/java/org/keycloak/models/session/PersistentAuthenticatedClientSessionAdapter.java
+++ b/server-spi-private/src/main/java/org/keycloak/models/session/PersistentAuthenticatedClientSessionAdapter.java
@@ -164,7 +164,7 @@ public class PersistentAuthenticatedClientSessionAdapter implements Authenticate
         // Information not persisted.
     }
 
-public static GetterCache<String> getAction = new GetterCache<>("04#static-getter:PersistentAuthenticatedClientSessionAdapter.getAction");
+public static CaffeineGetterCache<String> getAction = new CaffeineGetterCache<>("04#static-getter:PersistentAuthenticatedClientSessionAdapter.getAction", 120000);
 
     @Override
     public String getAction() {
diff --git a/server-spi-private/src/main/java/org/keycloak/models/session/PersistentUserSessionAdapter.java b/server-spi-private/src/main/java/org/keycloak/models/session/PersistentUserSessionAdapter.java
index 0d6d979..eb7fa29 100644
--- a/server-spi-private/src/main/java/org/keycloak/models/session/PersistentUserSessionAdapter.java
+++ b/server-spi-private/src/main/java/org/keycloak/models/session/PersistentUserSessionAdapter.java
@@ -79,7 +79,7 @@ public class PersistentUserSessionAdapter implements OfflineUserSessionModel {
         this.authenticatedClientSessions = clientSessions;
     }
 
-public static GetterCache<PersistentUserSessionData> getData = new GetterCache<>("05#static-getter:PersistentUserSessionAdapter.getData");
+public static CaffeineGetterCache<PersistentUserSessionData> getData = new CaffeineGetterCache<>("05#static-getter:PersistentUserSessionAdapter.getData", 120000);
     // Lazily init data
     private PersistentUserSessionData getData() {
 return getData.computeIfAbsent(() -> {
@@ -151,7 +151,7 @@ return getData.computeIfAbsent(() -> {
         return getData().getIpAddress();
     }
 
-public static GetterCache<String> getAuthMethod = new GetterCache<>("03#static-getter:PersistentUserSessionAdapter.getAuthMethod");
+public static CaffeineGetterCache<String> getAuthMethod = new CaffeineGetterCache<>("03#static-getter:PersistentUserSessionAdapter.getAuthMethod", 120000);
 
     @Override
     public String getAuthMethod() {