keycloak-aplcache

Details

diff --git a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheRealmProviderFactory.java b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheRealmProviderFactory.java
index ac8f373..34aa5ce 100755
--- a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheRealmProviderFactory.java
+++ b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/InfinispanCacheRealmProviderFactory.java
@@ -141,7 +141,7 @@ public class InfinispanCacheRealmProviderFactory implements CacheRealmProviderFa
                     realmCache.evictRoleById(r);
                 }
 
-                for (String c : realm.getClients().values()) {
+                for (String c : realm.getClients()) {
                     realmCache.evictClientById(c);
                 }
 
diff --git a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/locking/entities/RevisionedCachedRealm.java b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/locking/entities/RevisionedCachedRealm.java
index 2b3a524..c4fd487 100755
--- a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/locking/entities/RevisionedCachedRealm.java
+++ b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/locking/entities/RevisionedCachedRealm.java
@@ -42,7 +42,7 @@ public class RevisionedCachedRealm extends CachedRealm implements Revisioned {
     @Override
     protected void cacheClients(RealmCache cache, RealmProvider delegate, RealmModel model) {
         for (ClientModel client : model.getClients()) {
-            clients.put(client.getClientId(), client.getId());
+            clients.add(client.getId());
         }
     }
 
diff --git a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/locking/LockingCacheRealmProviderFactory.java b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/locking/LockingCacheRealmProviderFactory.java
index 23f8e53..d2bfbf4 100755
--- a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/locking/LockingCacheRealmProviderFactory.java
+++ b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/locking/LockingCacheRealmProviderFactory.java
@@ -138,7 +138,7 @@ public class LockingCacheRealmProviderFactory implements CacheRealmProviderFacto
                     realmCache.evictRoleById(r);
                 }
 
-                for (String c : realm.getClients().values()) {
+                for (String c : realm.getClients()) {
                     realmCache.evictClientById(c);
                 }
 
diff --git a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/RealmAdapter.java b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/RealmAdapter.java
index 690d2fe..2f3048a 100755
--- a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/RealmAdapter.java
+++ b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/RealmAdapter.java
@@ -591,7 +591,7 @@ public class RealmAdapter implements RealmModel {
     public List<ClientModel> getClients() {
         if (updated != null) return updated.getClients();
         List<ClientModel> apps = new LinkedList<>();
-        for (String id : cached.getClients().values()) {
+        for (String id : cached.getClients()) {
             ClientModel model = cacheSession.getClientById(id, this);
             if (model == null) {
                 throw new IllegalStateException("Cached application not found: " + id);
diff --git a/server-spi/src/main/java/org/keycloak/models/cache/entities/CachedRealm.java b/server-spi/src/main/java/org/keycloak/models/cache/entities/CachedRealm.java
index ad2ba6a..a037d05 100755
--- a/server-spi/src/main/java/org/keycloak/models/cache/entities/CachedRealm.java
+++ b/server-spi/src/main/java/org/keycloak/models/cache/entities/CachedRealm.java
@@ -147,7 +147,7 @@ public class CachedRealm implements Serializable {
     protected List<String> defaultGroups = new LinkedList<String>();
     protected Set<String> groups = new HashSet<String>();
     protected Map<String, String> realmRoles = new HashMap<String, String>();
-    protected Map<String, String> clients = new HashMap<String, String>();
+    protected List<String> clients = new LinkedList<>();
     protected List<String> clientTemplates= new LinkedList<>();
     protected boolean internationalizationEnabled;
     protected Set<String> supportedLocales;
@@ -296,7 +296,7 @@ public class CachedRealm implements Serializable {
 
     protected void cacheClients(RealmCache cache, RealmProvider delegate, RealmModel model) {
         for (ClientModel client : model.getClients()) {
-            clients.put(client.getClientId(), client.getId());
+            clients.add(client.getId());
             CachedClient cachedClient = new CachedClient(cache, delegate, model, client);
             cache.addClient(cachedClient);
         }
@@ -339,7 +339,7 @@ public class CachedRealm implements Serializable {
         return realmRoles;
     }
 
-    public Map<String, String> getClients() {
+    public List<String> getClients() {
         return clients;
     }