## Uses of Interface
org.keycloak.models.GroupModel

- Packages that use GroupModel
  Package | Description
  --- | ---
  org.keycloak.federation.kerberos |
  org.keycloak.federation.sssd |
  org.keycloak.models |
  org.keycloak.models.cache.infinispan |
  org.keycloak.models.cache.infinispan.entities |
  org.keycloak.models.cache.infinispan.events |
  org.keycloak.models.jpa |
  org.keycloak.models.map.group |
  org.keycloak.models.map.user |
  org.keycloak.models.utils |
  org.keycloak.protocol.saml.mappers |
  org.keycloak.services.resources.admin |
  org.keycloak.services.resources.admin.permissions |
  org.keycloak.storage |
  org.keycloak.storage.adapter |
  org.keycloak.storage.client |
  org.keycloak.storage.federated |
  org.keycloak.storage.group |
  org.keycloak.storage.jpa |
  org.keycloak.storage.ldap |
  org.keycloak.storage.ldap.mappers |
  org.keycloak.storage.ldap.mappers.membership.group |
  org.keycloak.storage.user |
  org.keycloak.utils |

- - ### Uses of GroupModel in org.keycloak.federation.kerberos

    Methods in org.keycloak.federation.kerberos with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `void` | KerberosFederationProvider.`preRemove(RealmModel realm, GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.federation.sssd

    Methods in org.keycloak.federation.sssd with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `void` | SSSDFederationProvider.`preRemove(RealmModel realm, GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.models

    Subinterfaces of GroupModel in org.keycloak.models
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `GroupModel.Streams` The `GroupModel.Streams` interface makes all collection-based methods in `GroupModel` default by providing implementations that delegate to the `Stream`-based variants instead of the other way around.

    Fields in org.keycloak.models with type parameters of type GroupModel
    Modifier and Type | Field and Description
    --- | ---
    `static Comparator<GroupModel>` | GroupModel.`COMPARE_BY_NAME`

    Methods in org.keycloak.models that return GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `default GroupModel` | RealmProvider.`createGroup(RealmModel realm, String name)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default GroupModel` | GroupProvider.`createGroup(RealmModel realm, String name)` Creates a new group with the given name in the given realm.
    `default GroupModel` | RealmProvider.`createGroup(RealmModel realm, String name, GroupModel toParent)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default GroupModel` | GroupProvider.`createGroup(RealmModel realm, String name, GroupModel toParent)` Creates a new group with the given name and parent to the given realm.
    `default GroupModel` | RealmProvider.`createGroup(RealmModel realm, String id, String name)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default GroupModel` | GroupProvider.`createGroup(RealmModel realm, String id, String name)` Creates a new group with the given id and name in the given realm.
    `GroupModel` | RealmProvider.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)` Deprecated. Use the corresponding method from `GroupProvider`.
    `GroupModel` | GroupProvider.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)` Creates a new group with the given name, id, name and parent to the given realm.
    `default GroupModel` | RealmModel.`createGroup(String name)`
    `default GroupModel` | RealmModel.`createGroup(String name, GroupModel toParent)`
    `default GroupModel` | RealmModel.`createGroup(String id, String name)`
    `GroupModel` | RealmModel.`createGroup(String id, String name, GroupModel toParent)`
    `GroupModel` | GroupModel.GroupRemovedEvent.`getGroup()`
    `GroupModel` | RealmProvider.`getGroupById(RealmModel realm, String id)` Deprecated. Use the corresponding method from `GroupProvider`.
    `GroupModel` | RealmModel.`getGroupById(String id)`
    `default GroupModel` | RealmProvider.`getGroupById(String id, RealmModel realm)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default GroupModel` | GroupProvider.`getGroupById(String id, RealmModel realm)` Deprecated. Use method `getGroupById(realm, id)`
    `GroupModel` | GroupModel.`getParent()`

    Methods in org.keycloak.models that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `default List<GroupModel>` | RealmModel.`getDefaultGroups()` Deprecated.
    `Stream<GroupModel>` | RealmModel.`getDefaultGroupsStream()`
    `Set<GroupModel>` | UserModel.`getGroups()` Deprecated. Use `getGroupsStream` instead.
    `default Set<GroupModel>` | UserModel.Streams.`getGroups()`
    `default List<GroupModel>` | RealmModel.`getGroups()` Deprecated. Use `getGroupsStream` instead.
    `default Set<GroupModel>` | UserModel.`getGroups(int first, int max)` Deprecated. Use `getGroupsStream` instead.
    `default List<GroupModel>` | RealmProvider.`getGroups(RealmModel realm)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default List<GroupModel>` | GroupProvider.`getGroups(RealmModel realm)` Deprecated. Use `getGroupsStream` instead.
    `default Set<GroupModel>` | UserModel.`getGroups(String search, int first, int max)` Deprecated. Use `getGroupsStream` instead.
    `default List<GroupModel>` | RealmProvider.`getGroupsByRole(RealmModel realm, RoleModel role, int firstResult, int maxResults)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default List<GroupModel>` | GroupProvider.`getGroupsByRole(RealmModel realm, RoleModel role, int firstResult, int maxResults)` Deprecated. Use `getGroupsByRoleStream` instead.
    `Stream<GroupModel>` | GroupProvider.`getGroupsByRoleStream(RealmModel realm, RoleModel role, Integer firstResult, Integer maxResults)` Returns groups with the given role in the given realm.
    `default Stream<GroupModel>` | UserModel.`getGroupsStream()` Obtains the groups associated with the user.
    `Stream<GroupModel>` | UserModel.Streams.`getGroupsStream()`
    `Stream<GroupModel>` | RealmModel.`getGroupsStream()`
    `Stream<GroupModel>` | GroupProvider.`getGroupsStream(RealmModel realm)` Returns groups for the given realm.
    `default Stream<GroupModel>` | GroupProvider.`getGroupsStream(RealmModel realm, Stream<String> ids)` Returns a list of groups with given ids.
    `default Stream<GroupModel>` | GroupProvider.`getGroupsStream(RealmModel realm, Stream<String> ids, Integer first, Integer max)` Returns a paginated list of groups with given ids.
    `Stream<GroupModel>` | GroupProvider.`getGroupsStream(RealmModel realm, Stream<String> ids, String search, Integer first, Integer max)` Returns a paginated stream of groups with given ids and given search value in group names.
    `default Stream<GroupModel>` | UserModel.`getGroupsStream(String search, Integer first, Integer max)` Returns a paginated stream of groups within this realm with search in the name
    `Set<GroupModel>` | GroupModel.`getSubGroups()` Deprecated.
    `default Set<GroupModel>` | GroupModel.Streams.`getSubGroups()`
    `default Stream<GroupModel>` | GroupModel.`getSubGroupsStream()`
    `Stream<GroupModel>` | GroupModel.Streams.`getSubGroupsStream()`
    `default List<GroupModel>` | RealmModel.`getTopLevelGroups()` Deprecated. Use `getTopLevelGroups` instead.
    `default List<GroupModel>` | RealmModel.`getTopLevelGroups(Integer first, Integer max)` Deprecated. Use `getTopLevelGroupsStream` instead.
    `default List<GroupModel>` | RealmProvider.`getTopLevelGroups(RealmModel realm)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default List<GroupModel>` | GroupProvider.`getTopLevelGroups(RealmModel realm)` Deprecated. Use `getTopLevelGroupsStream` instead.
    `default List<GroupModel>` | RealmProvider.`getTopLevelGroups(RealmModel realm, Integer first, Integer max)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default List<GroupModel>` | GroupProvider.`getTopLevelGroups(RealmModel realm, Integer firstResult, Integer maxResults)` Deprecated. Use `getTopLevelGroupsStream` instead.
    `Stream<GroupModel>` | RealmModel.`getTopLevelGroupsStream()`
    `Stream<GroupModel>` | RealmModel.`getTopLevelGroupsStream(Integer first, Integer max)`
    `Stream<GroupModel>` | GroupProvider.`getTopLevelGroupsStream(RealmModel realm)` Returns all top level groups (i.e.
    `Stream<GroupModel>` | GroupProvider.`getTopLevelGroupsStream(RealmModel realm, Integer firstResult, Integer maxResults)` Returns top level groups (i.e.
    `default List<GroupModel>` | RealmProvider.`searchForGroupByName(RealmModel realm, String search, Integer first, Integer max)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default List<GroupModel>` | RealmModel.`searchForGroupByName(String search, Integer first, Integer max)` Deprecated. Use `searchForGroupByName` instead.
    `Stream<GroupModel>` | RealmModel.`searchForGroupByNameStream(String search, Integer first, Integer max)`

    Methods in org.keycloak.models with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `void` | GroupModel.`addChild(GroupModel subGroup)` Automatically calls setParent() on the subGroup
    `void` | RealmModel.`addDefaultGroup(GroupModel group)`
    `void` | RealmProvider.`addTopLevelGroup(RealmModel realm, GroupModel subGroup)` Deprecated. Use the corresponding method from `GroupProvider`.
    `void` | GroupProvider.`addTopLevelGroup(RealmModel realm, GroupModel subGroup)` Removes parent group for the given group in the given realm.
    `default GroupModel` | RealmProvider.`createGroup(RealmModel realm, String name, GroupModel toParent)` Deprecated. Use the corresponding method from `GroupProvider`.
    `default GroupModel` | GroupProvider.`createGroup(RealmModel realm, String name, GroupModel toParent)` Creates a new group with the given name and parent to the given realm.
    `GroupModel` | RealmProvider.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)` Deprecated. Use the corresponding method from `GroupProvider`.
    `GroupModel` | GroupProvider.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)` Creates a new group with the given name, id, name and parent to the given realm.
    `default GroupModel` | RealmModel.`createGroup(String name, GroupModel toParent)`
    `GroupModel` | RealmModel.`createGroup(String id, String name, GroupModel toParent)`
    `boolean` | UserModel.`isMemberOf(GroupModel group)`
    `void` | UserModel.`joinGroup(GroupModel group)`
    `void` | UserModel.`leaveGroup(GroupModel group)`
    `void` | RealmModel.`moveGroup(GroupModel group, GroupModel toParent)`
    `void` | RealmProvider.`moveGroup(RealmModel realm, GroupModel group, GroupModel toParent)` Deprecated. Use the corresponding method from `GroupProvider`.
    `void` | GroupProvider.`moveGroup(RealmModel realm, GroupModel group, GroupModel toParent)` This method is used for moving groups in group structure, for example: making an existing child group child group of some other group, setting a top level group (i.e.
    `void` | UserProvider.`preRemove(RealmModel realm, GroupModel group)`
    `void` | GroupModel.`removeChild(GroupModel subGroup)` Automatically calls setParent() on the subGroup
    `void` | RealmModel.`removeDefaultGroup(GroupModel group)`
    `boolean` | RealmModel.`removeGroup(GroupModel group)`
    `boolean` | RealmProvider.`removeGroup(RealmModel realm, GroupModel group)` Deprecated. Use the corresponding method from `GroupProvider`.
    `boolean` | GroupProvider.`removeGroup(RealmModel realm, GroupModel group)` Removes the given group for the given realm.
    `void` | GroupModel.`setParent(GroupModel group)` You must also call addChild on the parent group, addChild on RealmModel if there is no parent group

  - ### Uses of GroupModel in org.keycloak.models.cache.infinispan

    Fields in org.keycloak.models.cache.infinispan declared as GroupModel
    Modifier and Type | Field and Description
    --- | ---
    `protected GroupModel` | GroupAdapter.`updated`

    Methods in org.keycloak.models.cache.infinispan that return GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `GroupModel` | RealmCacheSession.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)`
    `GroupModel` | RealmAdapter.`createGroup(String id, String name, GroupModel toParent)`
    `GroupModel` | RealmCacheSession.`getGroupById(RealmModel realm, String id)`
    `GroupModel` | RealmAdapter.`getGroupById(String id)`
    `GroupModel` | GroupAdapter.`getParent()`

    Methods in org.keycloak.models.cache.infinispan that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<GroupModel>` | RealmAdapter.`getDefaultGroupsStream()`
    `Stream<GroupModel>` | RealmCacheSession.`getGroupsByRoleStream(RealmModel realm, RoleModel role, Integer firstResult, Integer maxResults)`
    `Stream<GroupModel>` | UserAdapter.`getGroupsStream()`
    `Stream<GroupModel>` | RealmAdapter.`getGroupsStream()`
    `Stream<GroupModel>` | RealmCacheSession.`getGroupsStream(RealmModel realm)`
    `Stream<GroupModel>` | RealmCacheSession.`getGroupsStream(RealmModel realm, Stream<String> ids, String search, Integer first, Integer max)`
    `Stream<GroupModel>` | GroupAdapter.`getSubGroupsStream()`
    `Stream<GroupModel>` | RealmAdapter.`getTopLevelGroupsStream()`
    `Stream<GroupModel>` | RealmAdapter.`getTopLevelGroupsStream(Integer first, Integer max)`
    `Stream<GroupModel>` | RealmCacheSession.`getTopLevelGroupsStream(RealmModel realm)`
    `Stream<GroupModel>` | RealmCacheSession.`getTopLevelGroupsStream(RealmModel realm, Integer first, Integer max)`
    `Stream<GroupModel>` | RealmCacheSession.`searchForGroupByNameStream(RealmModel realm, String search, Integer first, Integer max)`
    `Stream<GroupModel>` | RealmAdapter.`searchForGroupByNameStream(String search, Integer first, Integer max)`

    Methods in org.keycloak.models.cache.infinispan with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `void` | GroupAdapter.`addChild(GroupModel subGroup)`
    `void` | RealmAdapter.`addDefaultGroup(GroupModel group)`
    `void` | RealmCacheSession.`addTopLevelGroup(RealmModel realm, GroupModel subGroup)`
    `GroupModel` | RealmCacheSession.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)`
    `GroupModel` | RealmAdapter.`createGroup(String id, String name, GroupModel toParent)`
    `Stream<UserModel>` | UserCacheSession.`getGroupMembersStream(RealmModel realm, GroupModel group)`
    `Stream<UserModel>` | UserCacheSession.`getGroupMembersStream(RealmModel realm, GroupModel group, Integer firstResult, Integer maxResults)`
    `boolean` | UserAdapter.`isMemberOf(GroupModel group)`
    `void` | UserAdapter.`joinGroup(GroupModel group)`
    `void` | UserAdapter.`leaveGroup(GroupModel group)`
    `void` | RealmAdapter.`moveGroup(GroupModel group, GroupModel toParent)`
    `void` | RealmCacheSession.`moveGroup(RealmModel realm, GroupModel group, GroupModel toParent)`
    `void` | UserCacheSession.`preRemove(RealmModel realm, GroupModel group)`
    `void` | GroupAdapter.`removeChild(GroupModel subGroup)`
    `void` | RealmAdapter.`removeDefaultGroup(GroupModel group)`
    `boolean` | RealmAdapter.`removeGroup(GroupModel group)`
    `boolean` | RealmCacheSession.`removeGroup(RealmModel realm, GroupModel group)`
    `void` | GroupAdapter.`setParent(GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.models.cache.infinispan.entities

    Method parameters in org.keycloak.models.cache.infinispan.entities with type arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `MultivaluedHashMap<String,String>` | CachedGroup.`getAttributes(Supplier<GroupModel> group)`
    `Set<String>` | CachedGroup.`getRoleMappings(Supplier<GroupModel> group)`
    `Set<String>` | CachedGroup.`getSubGroups(Supplier<GroupModel> group)`

    Constructors in org.keycloak.models.cache.infinispan.entities with parameters of type GroupModel
    Constructor and Description
    `CachedGroup(Long revision, RealmModel realm, GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.models.cache.infinispan.events

    Methods in org.keycloak.models.cache.infinispan.events with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `static GroupMovedEvent` | GroupMovedEvent.`create(GroupModel group, GroupModel toParent, String realmId)`
    `static GroupRemovedEvent` | GroupRemovedEvent.`create(GroupModel group, String realmId)`

  - ### Uses of GroupModel in org.keycloak.models.jpa

    Classes in org.keycloak.models.jpa that implement GroupModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `GroupAdapter`

    Methods in org.keycloak.models.jpa that return GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `GroupModel` | JpaRealmProvider.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)`
    `GroupModel` | RealmAdapter.`createGroup(String id, String name, GroupModel toParent)`
    `GroupModel` | JpaRealmProvider.`getGroupById(RealmModel realm, String id)`
    `GroupModel` | RealmAdapter.`getGroupById(String id)`
    `GroupModel` | GroupAdapter.`getParent()`

    Methods in org.keycloak.models.jpa that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<GroupModel>` | RealmAdapter.`getDefaultGroupsStream()`
    `Stream<GroupModel>` | JpaRealmProvider.`getGroupsByRoleStream(RealmModel realm, RoleModel role, Integer firstResult, Integer maxResults)`
    `Stream<GroupModel>` | UserAdapter.`getGroupsStream()`
    `Stream<GroupModel>` | RealmAdapter.`getGroupsStream()`
    `Stream<GroupModel>` | JpaRealmProvider.`getGroupsStream(RealmModel realm)`
    `Stream<GroupModel>` | JpaRealmProvider.`getGroupsStream(RealmModel realm, Stream<String> ids)`
    `Stream<GroupModel>` | JpaRealmProvider.`getGroupsStream(RealmModel realm, Stream<String> ids, Integer first, Integer max)`
    `Stream<GroupModel>` | JpaRealmProvider.`getGroupsStream(RealmModel realm, Stream<String> ids, String search, Integer first, Integer max)`
    `Stream<GroupModel>` | UserAdapter.`getGroupsStream(String search, Integer first, Integer max)`
    `Stream<GroupModel>` | GroupAdapter.`getSubGroupsStream()`
    `Stream<GroupModel>` | RealmAdapter.`getTopLevelGroupsStream()`
    `Stream<GroupModel>` | RealmAdapter.`getTopLevelGroupsStream(Integer first, Integer max)`
    `Stream<GroupModel>` | JpaRealmProvider.`getTopLevelGroupsStream(RealmModel realm)`
    `Stream<GroupModel>` | JpaRealmProvider.`getTopLevelGroupsStream(RealmModel realm, Integer first, Integer max)`
    `Stream<GroupModel>` | JpaRealmProvider.`searchForGroupByNameStream(RealmModel realm, String search, Integer first, Integer max)`
    `Stream<GroupModel>` | RealmAdapter.`searchForGroupByNameStream(String search, Integer first, Integer max)`

    Methods in org.keycloak.models.jpa with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `void` | GroupAdapter.`addChild(GroupModel subGroup)`
    `void` | RealmAdapter.`addDefaultGroup(GroupModel group)`
    `void` | JpaRealmProvider.`addTopLevelGroup(RealmModel realm, GroupModel subGroup)`
    `GroupModel` | JpaRealmProvider.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)`
    `GroupModel` | RealmAdapter.`createGroup(String id, String name, GroupModel toParent)`
    `Stream<UserModel>` | JpaUserProvider.`getGroupMembersStream(RealmModel realm, GroupModel group)`
    `Stream<UserModel>` | JpaUserProvider.`getGroupMembersStream(RealmModel realm, GroupModel group, Integer firstResult, Integer maxResults)`
    `protected javax.persistence.TypedQuery<UserGroupMembershipEntity>` | UserAdapter.`getUserGroupMappingQuery(GroupModel group)`
    `boolean` | UserAdapter.`isMemberOf(GroupModel group)`
    `void` | UserAdapter.`joinGroup(GroupModel group)`
    `protected void` | UserAdapter.`joinGroupImpl(GroupModel group)`
    `void` | UserAdapter.`leaveGroup(GroupModel group)`
    `void` | RealmAdapter.`moveGroup(GroupModel group, GroupModel toParent)`
    `void` | JpaRealmProvider.`moveGroup(RealmModel realm, GroupModel group, GroupModel toParent)`
    `void` | JpaUserProvider.`preRemove(RealmModel realm, GroupModel group)`
    `void` | GroupAdapter.`removeChild(GroupModel subGroup)`
    `void` | RealmAdapter.`removeDefaultGroup(GroupModel group)`
    `boolean` | RealmAdapter.`removeGroup(GroupModel group)`
    `boolean` | JpaRealmProvider.`removeGroup(RealmModel realm, GroupModel group)`
    `void` | GroupAdapter.`setParent(GroupModel parent)`
    `static GroupEntity` | GroupAdapter.`toEntity(GroupModel model, javax.persistence.EntityManager em)`

  - ### Uses of GroupModel in org.keycloak.models.map.group

    Classes in org.keycloak.models.map.group that implement GroupModel
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractGroupModel<E extends AbstractEntity>`
    `class` | `MapGroupAdapter`

    Methods in org.keycloak.models.map.group that return GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `GroupModel` | MapGroupProvider.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)`
    `GroupModel` | MapGroupProvider.`getGroupById(RealmModel realm, String id)`
    `GroupModel` | MapGroupAdapter.`getParent()`

    Methods in org.keycloak.models.map.group that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<GroupModel>` | MapGroupProvider.`getGroupsByRoleStream(RealmModel realm, RoleModel role, Integer firstResult, Integer maxResults)`
    `Stream<GroupModel>` | MapGroupProvider.`getGroupsStream(RealmModel realm)`
    `Stream<GroupModel>` | MapGroupProvider.`getGroupsStream(RealmModel realm, Stream<String> ids, String search, Integer first, Integer max)`
    `Stream<GroupModel>` | MapGroupAdapter.`getSubGroupsStream()`
    `Stream<GroupModel>` | MapGroupProvider.`getTopLevelGroupsStream(RealmModel realm)`
    `Stream<GroupModel>` | MapGroupProvider.`getTopLevelGroupsStream(RealmModel realm, Integer firstResult, Integer maxResults)`
    `Stream<GroupModel>` | MapGroupProvider.`searchForGroupByNameStream(RealmModel realm, String search, Integer firstResult, Integer maxResults)`

    Methods in org.keycloak.models.map.group with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `void` | MapGroupAdapter.`addChild(GroupModel subGroup)`
    `void` | MapGroupProvider.`addTopLevelGroup(RealmModel realm, GroupModel subGroup)`
    `GroupModel` | MapGroupProvider.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)`
    `void` | MapGroupProvider.`moveGroup(RealmModel realm, GroupModel group, GroupModel toParent)`
    `void` | MapGroupAdapter.`removeChild(GroupModel subGroup)`
    `boolean` | MapGroupProvider.`removeGroup(RealmModel realm, GroupModel group)`
    `void` | MapGroupAdapter.`setParent(GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.models.map.user

    Methods in org.keycloak.models.map.user that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<GroupModel>` | MapUserAdapter.`getGroupsStream()`

    Methods in org.keycloak.models.map.user with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<UserModel>` | MapUserProvider.`getGroupMembersStream(RealmModel realm, GroupModel group)`
    `Stream<UserModel>` | MapUserProvider.`getGroupMembersStream(RealmModel realm, GroupModel group, Integer firstResult, Integer maxResults)`
    `boolean` | MapUserAdapter.`isMemberOf(GroupModel group)`
    `void` | MapUserAdapter.`joinGroup(GroupModel group)`
    `void` | MapUserAdapter.`leaveGroup(GroupModel group)`
    `void` | MapUserProvider.`preRemove(RealmModel realm, GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.models.utils

    Methods in org.keycloak.models.utils that return GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `static GroupModel` | KeycloakModelUtils.`findGroupByPath(RealmModel realm, String path)`

    Methods in org.keycloak.models.utils that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<GroupModel>` | UserModelDelegate.`getGroupsStream()`

    Methods in org.keycloak.models.utils with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `static String` | ModelToRepresentation.`buildGroupPath(GroupModel group)`
    `static void` | ModelToRepresentation.`buildGroupPath(StringBuilder sb, GroupModel group)`
    `static boolean` | RoleUtils.`hasRoleFromGroup(GroupModel group, RoleModel targetRole, boolean checkParentGroup)` Checks whether the `targetRole` is contained in the given group or its parents (if requested)
    `static void` | RepresentationToModel.`importGroup(RealmModel realm, GroupModel parent, GroupRepresentation group)`
    `static boolean` | RoleUtils.`isMember(Set<GroupModel> groups, GroupModel targetGroup)` Deprecated. Use `RoleUtils.isMember(Stream, GroupModel)` isMember(Stream, GroupModel)} instead.
    `static boolean` | RoleUtils.`isMember(Stream<GroupModel> groups, GroupModel targetGroup)`
    `boolean` | UserModelDelegate.`isMemberOf(GroupModel group)`
    `void` | ReadOnlyUserModelDelegate.`joinGroup(GroupModel group)`
    `void` | UserModelDelegate.`joinGroup(GroupModel group)`
    `void` | ReadOnlyUserModelDelegate.`leaveGroup(GroupModel group)`
    `void` | UserModelDelegate.`leaveGroup(GroupModel group)`
    `static List<String>` | KeycloakModelUtils.`resolveAttribute(GroupModel group, String name)`
    `static String` | KeycloakModelUtils.`resolveFirstAttribute(GroupModel group, String name)`
    `static GroupRepresentation` | ModelToRepresentation.`toGroupHierarchy(GroupModel group, boolean full)`
    `static GroupRepresentation` | ModelToRepresentation.`toRepresentation(GroupModel group, boolean full)`

    Method parameters in org.keycloak.models.utils with type arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `static boolean` | RoleUtils.`hasRoleFromGroup(Iterable<GroupModel> groups, RoleModel targetRole, boolean checkParentGroup)` Deprecated. Use `RoleUtils.hasRoleFromGroup(Stream, RoleModel, boolean)` hasRoleFromGroup(Stream, RoleModel, boolean)} instead.
    `static boolean` | RoleUtils.`hasRoleFromGroup(Stream<GroupModel> groups, RoleModel targetRole, boolean checkParentGroup)` Checks whether the `targetRole` is contained in any of the `groups` or their parents (if requested)
    `static boolean` | RoleUtils.`isMember(Set<GroupModel> groups, GroupModel targetGroup)` Deprecated. Use `RoleUtils.isMember(Stream, GroupModel)` isMember(Stream, GroupModel)} instead.
    `static boolean` | RoleUtils.`isMember(Stream<GroupModel> groups, GroupModel targetGroup)`

  - ### Uses of GroupModel in org.keycloak.protocol.saml.mappers

    Methods in org.keycloak.protocol.saml.mappers with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `String` | SAMLGroupNameMapper.`mapName(ProtocolMapperModel model, GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.services.resources.admin

    Methods in org.keycloak.services.resources.admin with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `static ManagementPermissionReference` | GroupResource.`toMgmtRef(GroupModel group, AdminPermissionManagement permissions)`
    `static void` | GroupResource.`updateGroup(GroupRepresentation rep, GroupModel model)`

    Constructors in org.keycloak.services.resources.admin with parameters of type GroupModel
    Constructor and Description
    `GroupResource(RealmModel realm, GroupModel group, KeycloakSession session, AdminPermissionEvaluator auth, AdminEventBuilder adminEvent)`

  - ### Uses of GroupModel in org.keycloak.services.resources.admin.permissions

    Methods in org.keycloak.services.resources.admin.permissions with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | GroupPermissionEvaluator.`canManage(GroupModel group)`
    `boolean` | GroupPermissionEvaluator.`canManageMembers(GroupModel group)`
    `boolean` | GroupPermissionEvaluator.`canManageMembership(GroupModel group)`
    `boolean` | GroupPermissionEvaluator.`canView(GroupModel group)`
    `Map<String,Boolean>` | GroupPermissionEvaluator.`getAccess(GroupModel group)`
    `boolean` | GroupPermissionEvaluator.`getGroupsWithViewPermission(GroupModel group)`
    `Map<String,String>` | GroupPermissionManagement.`getPermissions(GroupModel group)`
    `boolean` | GroupPermissionManagement.`isPermissionsEnabled(GroupModel group)`
    `Policy` | GroupPermissionManagement.`manageMembershipPermission(GroupModel group)`
    `Policy` | GroupPermissionManagement.`manageMembersPermission(GroupModel group)`
    `Policy` | GroupPermissionManagement.`managePermission(GroupModel group)`
    `void` | GroupPermissionEvaluator.`requireManage(GroupModel group)`
    `void` | GroupPermissionEvaluator.`requireManageMembers(GroupModel group)`
    `void` | GroupPermissionEvaluator.`requireManageMembership(GroupModel group)`
    `void` | GroupPermissionEvaluator.`requireView(GroupModel group)`
    `void` | GroupPermissionEvaluator.`requireViewMembers(GroupModel group)`
    `Resource` | GroupPermissionManagement.`resource(GroupModel group)`
    `void` | GroupPermissionManagement.`setPermissionsEnabled(GroupModel group, boolean enable)`
    `Policy` | GroupPermissionManagement.`viewMembersPermission(GroupModel group)`
    `Policy` | GroupPermissionManagement.`viewPermission(GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.storage

    Methods in org.keycloak.storage that return GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `GroupModel` | GroupStorageManager.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)`
    `GroupModel` | GroupStorageManager.`getGroupById(RealmModel realm, String id)`

    Methods in org.keycloak.storage that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<GroupModel>` | GroupStorageManager.`getGroupsByRoleStream(RealmModel realm, RoleModel role, Integer firstResult, Integer maxResults)`
    `Stream<GroupModel>` | GroupStorageManager.`getGroupsStream(RealmModel realm)`
    `Stream<GroupModel>` | GroupStorageManager.`getGroupsStream(RealmModel realm, Stream<String> ids, String search, Integer first, Integer max)`
    `Stream<GroupModel>` | GroupStorageManager.`getTopLevelGroupsStream(RealmModel realm)`
    `Stream<GroupModel>` | GroupStorageManager.`getTopLevelGroupsStream(RealmModel realm, Integer firstResult, Integer maxResults)`
    `Stream<GroupModel>` | GroupStorageManager.`searchForGroupByNameStream(RealmModel realm, String search, Integer firstResult, Integer maxResults)` Obtaining groups from an external client storage is time-bounded.

    Methods in org.keycloak.storage with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `void` | GroupStorageManager.`addTopLevelGroup(RealmModel realm, GroupModel subGroup)`
    `GroupModel` | GroupStorageManager.`createGroup(RealmModel realm, String id, String name, GroupModel toParent)`
    `Stream<UserModel>` | UserStorageManager.`getGroupMembersStream(RealmModel realm, GroupModel group)` `UserLookupProvider` methods implementations end here `UserQueryProvider` methods implementation start here
    `Stream<UserModel>` | UserStorageManager.`getGroupMembersStream(RealmModel realm, GroupModel group, Integer firstResult, Integer maxResults)`
    `void` | GroupStorageManager.`moveGroup(RealmModel realm, GroupModel group, GroupModel toParent)`
    `default void` | UserStorageProvider.`preRemove(RealmModel realm, GroupModel group)` Callback when a group is removed.
    `void` | UserStorageManager.`preRemove(RealmModel realm, GroupModel group)`
    `boolean` | GroupStorageManager.`removeGroup(RealmModel realm, GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.storage.adapter

    Methods in org.keycloak.storage.adapter that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Set<GroupModel>` | AbstractUserAdapterFederatedStorage.`getGroups()` Gets groups from federated storage and automatically appends default groups of realm.
    `Set<GroupModel>` | AbstractUserAdapterFederatedStorage.Streams.`getGroups()`
    `Set<GroupModel>` | AbstractUserAdapter.`getGroups()`
    `Set<GroupModel>` | AbstractUserAdapter.Streams.`getGroups()`
    `protected Set<GroupModel>` | AbstractUserAdapterFederatedStorage.`getGroupsInternal()` Get group membership mappings that are managed by this storage provider
    `protected Set<GroupModel>` | AbstractUserAdapter.`getGroupsInternal()` Get group membership mappings that are managed by this storage provider
    `Stream<GroupModel>` | InMemoryUserAdapter.`getGroupsStream()`
    `Stream<GroupModel>` | AbstractUserAdapterFederatedStorage.Streams.`getGroupsStream()`
    `Stream<GroupModel>` | AbstractUserAdapter.Streams.`getGroupsStream()`

    Methods in org.keycloak.storage.adapter with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | InMemoryUserAdapter.`isMemberOf(GroupModel group)`
    `boolean` | AbstractUserAdapterFederatedStorage.`isMemberOf(GroupModel group)`
    `boolean` | AbstractUserAdapterFederatedStorage.Streams.`isMemberOf(GroupModel group)`
    `boolean` | AbstractUserAdapter.`isMemberOf(GroupModel group)`
    `boolean` | AbstractUserAdapter.Streams.`isMemberOf(GroupModel group)`
    `void` | UpdateOnlyChangeUserModelDelegate.`joinGroup(GroupModel group)`
    `void` | InMemoryUserAdapter.`joinGroup(GroupModel group)`
    `void` | AbstractUserAdapterFederatedStorage.`joinGroup(GroupModel group)`
    `void` | AbstractUserAdapter.`joinGroup(GroupModel group)`
    `void` | UpdateOnlyChangeUserModelDelegate.`leaveGroup(GroupModel group)`
    `void` | InMemoryUserAdapter.`leaveGroup(GroupModel group)`
    `void` | AbstractUserAdapterFederatedStorage.`leaveGroup(GroupModel group)`
    `void` | AbstractUserAdapter.`leaveGroup(GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.storage.client

    Methods in org.keycloak.storage.client with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `default void` | ClientStorageProvider.`preRemove(RealmModel realm, GroupModel group)` Callback when a group is removed.

  - ### Uses of GroupModel in org.keycloak.storage.federated

    Methods in org.keycloak.storage.federated that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Set<GroupModel>` | UserGroupMembershipFederatedStorage.`getGroups(RealmModel realm, String userId)` Deprecated. Use `getGroupsStream` instead.
    `default Set<GroupModel>` | UserGroupMembershipFederatedStorage.Streams.`getGroups(RealmModel realm, String userId)`
    `default Stream<GroupModel>` | UserGroupMembershipFederatedStorage.`getGroupsStream(RealmModel realm, String userId)` Obtains the groups associated with the federated user.
    `Stream<GroupModel>` | UserGroupMembershipFederatedStorage.Streams.`getGroupsStream(RealmModel realm, String userId)`

    Methods in org.keycloak.storage.federated with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `List<String>` | UserGroupMembershipFederatedStorage.`getMembership(RealmModel realm, GroupModel group, int firstResult, int max)` Deprecated. Use `getMembershipStream` instead.
    `default List<String>` | UserGroupMembershipFederatedStorage.Streams.`getMembership(RealmModel realm, GroupModel group, int firstResult, int max)`
    `default Stream<String>` | UserGroupMembershipFederatedStorage.`getMembershipStream(RealmModel realm, GroupModel group, int firstResult, int max)` Obtains the federated users that are members of the given `group` in the specified `realm`.
    `Stream<String>` | UserGroupMembershipFederatedStorage.Streams.`getMembershipStream(RealmModel realm, GroupModel group, int firstResult, int max)`
    `void` | UserGroupMembershipFederatedStorage.`joinGroup(RealmModel realm, String userId, GroupModel group)`
    `void` | UserGroupMembershipFederatedStorage.`leaveGroup(RealmModel realm, String userId, GroupModel group)`
    `void` | UserFederatedStorageProvider.`preRemove(RealmModel realm, GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.storage.group

    Methods in org.keycloak.storage.group that return GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `GroupModel` | GroupLookupProvider.`getGroupById(RealmModel realm, String id)` Returns a group from the given realm with the corresponding id

    Methods in org.keycloak.storage.group that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `default List<GroupModel>` | GroupLookupProvider.`searchForGroupByName(RealmModel realm, String search, Integer firstResult, Integer maxResults)` Deprecated. Use `searchForGroupByNameStream` instead.
    `Stream<GroupModel>` | GroupLookupProvider.`searchForGroupByNameStream(RealmModel realm, String search, Integer firstResult, Integer maxResults)` Returns groups with the given string in name for the given realm.

  - ### Uses of GroupModel in org.keycloak.storage.jpa

    Methods in org.keycloak.storage.jpa that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<GroupModel>` | JpaUserFederatedStorageProvider.`getGroupsStream(RealmModel realm, String userId)`

    Methods in org.keycloak.storage.jpa with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<String>` | JpaUserFederatedStorageProvider.`getMembershipStream(RealmModel realm, GroupModel group, int firstResult, int max)`
    `void` | JpaUserFederatedStorageProvider.`joinGroup(RealmModel realm, String userId, GroupModel group)`
    `void` | JpaUserFederatedStorageProvider.`leaveGroup(RealmModel realm, String userId, GroupModel group)`
    `void` | JpaUserFederatedStorageProvider.`preRemove(RealmModel realm, GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.storage.ldap

    Methods in org.keycloak.storage.ldap with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `Stream<UserModel>` | LDAPStorageProvider.`getGroupMembersStream(RealmModel realm, GroupModel group)`
    `Stream<UserModel>` | LDAPStorageProvider.`getGroupMembersStream(RealmModel realm, GroupModel group, Integer firstResult, Integer maxResults)`
    `void` | LDAPStorageProvider.`preRemove(RealmModel realm, GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.storage.ldap.mappers

    Methods in org.keycloak.storage.ldap.mappers with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `List<UserModel>` | LDAPStorageMapper.`getGroupMembers(RealmModel realm, GroupModel group, int firstResult, int maxResults)` Return empty list if doesn't support storing of groups
    `List<UserModel>` | AbstractLDAPStorageMapper.`getGroupMembers(RealmModel realm, GroupModel group, int firstResult, int maxResults)`

  - ### Uses of GroupModel in org.keycloak.storage.ldap.mappers.membership.group

    Methods in org.keycloak.storage.ldap.mappers.membership.group that return GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `protected GroupModel` | GroupLDAPStorageMapper.`createKcGroup(RealmModel realm, String ldapGroupName, GroupModel parentGroup)` Creates a new KC group from given LDAP group name in given KC parent group or the groups path.
    `protected GroupModel` | GroupLDAPStorageMapper.`findKcGroupByLDAPGroup(RealmModel realm, LDAPObject ldapGroup)`
    `protected GroupModel` | GroupLDAPStorageMapper.`findKcGroupOrSyncFromLDAP(RealmModel realm, LDAPObject ldapGroup, UserModel user)`
    `protected GroupModel` | GroupLDAPStorageMapper.`getKcGroupsPathGroup(RealmModel realm)` Provides KC group defined as groups path or null (top-level group) if corresponding group is not available.

    Methods in org.keycloak.storage.ldap.mappers.membership.group that return types with arguments of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `protected Stream<GroupModel>` | GroupLDAPStorageMapper.`getAllKcGroups(RealmModel realm)` Provides a stream of all KC groups (with their sub groups) from groups path configured by the "Groups Path" configuration property.
    `Stream<GroupModel>` | GroupLDAPStorageMapper.LDAPGroupMappingsUserDelegate.`getGroupsStream()`
    `protected Stream<GroupModel>` | GroupLDAPStorageMapper.`getKcSubGroups(RealmModel realm, GroupModel parentGroup)` Provides a list of all KC sub groups from given parent group or from groups path.
    `protected Stream<GroupModel>` | GroupLDAPStorageMapper.LDAPGroupMappingsUserDelegate.`getLDAPGroupMappingsConverted()`

    Methods in org.keycloak.storage.ldap.mappers.membership.group with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `void` | GroupLDAPStorageMapper.`addGroupMappingInLDAP(RealmModel realm, GroupModel kcGroup, LDAPObject ldapUser)`
    `protected GroupModel` | GroupLDAPStorageMapper.`createKcGroup(RealmModel realm, String ldapGroupName, GroupModel parentGroup)` Creates a new KC group from given LDAP group name in given KC parent group or the groups path.
    `List<UserModel>` | GroupLDAPStorageMapper.`getGroupMembers(RealmModel realm, GroupModel kcGroup, int firstResult, int maxResults)`
    `protected Stream<GroupModel>` | GroupLDAPStorageMapper.`getKcSubGroups(RealmModel realm, GroupModel parentGroup)` Provides a list of all KC sub groups from given parent group or from groups path.
    `boolean` | GroupLDAPStorageMapper.LDAPGroupMappingsUserDelegate.`isMemberOf(GroupModel group)`
    `void` | GroupLDAPStorageMapper.LDAPGroupMappingsUserDelegate.`joinGroup(GroupModel group)`
    `void` | GroupLDAPStorageMapper.LDAPGroupMappingsUserDelegate.`leaveGroup(GroupModel group)`

  - ### Uses of GroupModel in org.keycloak.storage.user

    Methods in org.keycloak.storage.user with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `List<UserModel>` | UserQueryProvider.`getGroupMembers(RealmModel realm, GroupModel group)` Deprecated. Use `getGroupMembersStream` instead.
    `default List<UserModel>` | UserQueryProvider.Streams.`getGroupMembers(RealmModel realm, GroupModel group)`
    `List<UserModel>` | UserQueryProvider.`getGroupMembers(RealmModel realm, GroupModel group, int firstResult, int maxResults)` Deprecated. Use `getGroupMembersStream` instead.
    `default List<UserModel>` | UserQueryProvider.Streams.`getGroupMembers(RealmModel realm, GroupModel group, int firstResult, int maxResults)`
    `default Stream<UserModel>` | UserQueryProvider.`getGroupMembersStream(RealmModel realm, GroupModel group)` Obtains users that belong to a specific group.
    `Stream<UserModel>` | UserQueryProvider.Streams.`getGroupMembersStream(RealmModel realm, GroupModel group)`
    `default Stream<UserModel>` | UserQueryProvider.`getGroupMembersStream(RealmModel realm, GroupModel group, Integer firstResult, Integer maxResults)` Obtains users that belong to a specific group.
    `Stream<UserModel>` | UserQueryProvider.Streams.`getGroupMembersStream(RealmModel realm, GroupModel group, Integer firstResult, Integer maxResults)`

  - ### Uses of GroupModel in org.keycloak.utils

    Methods in org.keycloak.utils with parameters of type GroupModel
    Modifier and Type | Method and Description
    --- | ---
    `static GroupRepresentation` | ServicesUtils.`groupToBriefRepresentation(GroupModel g)`

Copyright © 2020 JBoss by Red Hat. All rights reserved.