Details
diff --git a/server-spi-private/src/main/java/org/keycloak/migration/migrators/MigrateTo2_3_0.java b/server-spi-private/src/main/java/org/keycloak/migration/migrators/MigrateTo2_3_0.java
index 80862ca..56aee36 100644
--- a/server-spi-private/src/main/java/org/keycloak/migration/migrators/MigrateTo2_3_0.java
+++ b/server-spi-private/src/main/java/org/keycloak/migration/migrators/MigrateTo2_3_0.java
@@ -17,15 +17,11 @@
package org.keycloak.migration.migrators;
-import java.util.LinkedList;
-import java.util.List;
import org.keycloak.migration.ModelVersion;
import org.keycloak.models.ClientModel;
import org.keycloak.models.ClientTemplateModel;
import org.keycloak.models.KeycloakSession;
-import org.keycloak.models.ProtocolMapperContainerModel;
-import org.keycloak.models.ProtocolMapperModel;
import org.keycloak.models.RealmModel;
/**
@@ -39,29 +35,15 @@ public class MigrateTo2_3_0 implements Migration {
public void migrate(KeycloakSession session) {
for (RealmModel realm : session.realms().getRealms()) {
for (ClientModel client : realm.getClients()) {
- updateProtocolMappers(client);
+ MigrationUtils.updateProtocolMappers(client);
}
for (ClientTemplateModel clientTemplate : realm.getClientTemplates()) {
- updateProtocolMappers(clientTemplate);
+ MigrationUtils.updateProtocolMappers(clientTemplate);
}
}
}
- private void updateProtocolMappers(ProtocolMapperContainerModel client) {
- List<ProtocolMapperModel> toUpdate = new LinkedList<>();
- for (ProtocolMapperModel mapper : client.getProtocolMappers()) {
- if (!mapper.getConfig().containsKey("userinfo.token.claim") && mapper.getConfig().containsKey("id.token.claim")) {
- mapper.getConfig().put("userinfo.token.claim", mapper.getConfig().get("id.token.claim"));
- toUpdate.add(mapper);
- }
- }
-
- for (ProtocolMapperModel mapper : toUpdate) {
- client.updateProtocolMapper(mapper);
- }
- }
-
@Override
public ModelVersion getVersion() {
return VERSION;
diff --git a/server-spi-private/src/main/java/org/keycloak/migration/migrators/MigrationUtils.java b/server-spi-private/src/main/java/org/keycloak/migration/migrators/MigrationUtils.java
index ae3a99f..7eb997a 100644
--- a/server-spi-private/src/main/java/org/keycloak/migration/migrators/MigrationUtils.java
+++ b/server-spi-private/src/main/java/org/keycloak/migration/migrators/MigrationUtils.java
@@ -17,10 +17,14 @@
package org.keycloak.migration.migrators;
+import java.util.LinkedList;
+import java.util.List;
import org.keycloak.Config;
import org.keycloak.models.AdminRoles;
import org.keycloak.models.ClientModel;
import org.keycloak.models.Constants;
+import org.keycloak.models.ProtocolMapperContainerModel;
+import org.keycloak.models.ProtocolMapperModel;
import org.keycloak.models.RealmModel;
import org.keycloak.models.RequiredActionProviderModel;
import org.keycloak.models.RoleModel;
@@ -60,5 +64,19 @@ public class MigrationUtils {
otpAction.setName("Configure OTP");
}
+
+ public static void updateProtocolMappers(ProtocolMapperContainerModel client) {
+ List<ProtocolMapperModel> toUpdate = new LinkedList<>();
+ for (ProtocolMapperModel mapper : client.getProtocolMappers()) {
+ if (!mapper.getConfig().containsKey("userinfo.token.claim") && mapper.getConfig().containsKey("id.token.claim")) {
+ mapper.getConfig().put("userinfo.token.claim", mapper.getConfig().get("id.token.claim"));
+ toUpdate.add(mapper);
+ }
+ }
+
+ for (ProtocolMapperModel mapper : toUpdate) {
+ client.updateProtocolMapper(mapper);
+ }
+ }
}
diff --git a/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java b/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java
index 75f46f5..c0bfda1 100755
--- a/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java
+++ b/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java
@@ -1059,7 +1059,7 @@ public class RepresentationToModel {
client.addProtocolMapper(toModel(mapper));
}
-
+ MigrationUtils.updateProtocolMappers(client);
}
@@ -1069,6 +1069,7 @@ public class RepresentationToModel {
client.setClientTemplate(template);
break;
}
+ MigrationUtils.updateProtocolMappers(template);
}
}