keycloak-aplcache

Details

diff --git a/server-spi/src/main/java/org/keycloak/models/utils/RepresentationToModel.java b/server-spi/src/main/java/org/keycloak/models/utils/RepresentationToModel.java
index b972cda..c2e654e 100755
--- a/server-spi/src/main/java/org/keycloak/models/utils/RepresentationToModel.java
+++ b/server-spi/src/main/java/org/keycloak/models/utils/RepresentationToModel.java
@@ -1746,6 +1746,10 @@ public class RepresentationToModel {
     }
 
     public static void updateComponent(KeycloakSession session, ComponentRepresentation rep, ComponentModel component, boolean internal) {
+        if (rep.getName() != null) {
+            component.setName(rep.getName());
+        }
+
         if (rep.getParentId() != null) {
             component.setParentId(rep.getParentId());
         }
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ComponentsTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ComponentsTest.java
index 409a3e1..d5a98f6 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ComponentsTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ComponentsTest.java
@@ -144,6 +144,24 @@ public class ComponentsTest extends AbstractAdminTest {
         assertEquals(1, returned.getConfig().size());
     }
 
+
+    @Test
+    public void testRename() {
+        ComponentRepresentation rep = createComponentRepresentation("mycomponent");
+        rep.getConfig().addFirst("required", "foo");
+
+        String id = createComponent(rep);
+        ComponentRepresentation returned = components.component(id).toRepresentation();
+        assertEquals("mycomponent", returned.getName());
+
+        rep.setName("myupdatedcomponent");
+
+        components.component(id).update(rep);
+
+        returned = components.component(id).toRepresentation();
+        assertEquals("myupdatedcomponent", returned.getName());
+    }
+
     @Test
     public void testSecretConfig() throws Exception {
         ComponentRepresentation rep = createComponentRepresentation("mycomponent");