org.keycloak.models.map.realm

## Class MapRealmProvider<K>

- java.lang.Object
- - org.keycloak.models.map.realm.MapRealmProvider<K>

- All Implemented Interfaces:
    ClientProvider, ClientScopeProvider, GroupProvider, RealmProvider, RoleProvider, Provider, ClientLookupProvider, ClientScopeLookupProvider, GroupLookupProvider, RoleLookupProvider

      public class MapRealmProvider<K>
      extends Object
      implements RealmProvider

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `MapRealmProvider(KeycloakSession session, MapStorage<K,MapRealmEntity<K>,RealmModel> realmStore)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `ClientModel` | `addClient(RealmModel realm, String id, String clientId)` Deprecated.
    `RoleModel` | `addClientRole(ClientModel client, String id, String name)` Deprecated.
    `ClientScopeModel` | `addClientScope(RealmModel realm, String id, String name)` Deprecated.
    `void` | `addClientScopes(RealmModel realm, ClientModel client, Set<ClientScopeModel> clientScopes, boolean defaultScope)` Deprecated.
    `RoleModel` | `addRealmRole(RealmModel realm, String id, String name)` Deprecated.
    `void` | `addTopLevelGroup(RealmModel realm, GroupModel subGroup)` Deprecated.
    `void` | `close()`
    `GroupModel` | `createGroup(RealmModel realm, String id, String name, GroupModel toParent)` Deprecated.
    `RealmModel` | `createRealm(String name)` Creates new realm with the given name.
    `RealmModel` | `createRealm(String id, String name)` Created new realm with given ID and name.
    `boolean` | `deleteLocalizationText(RealmModel realm, String locale, String key)`
    `boolean` | `deleteLocalizationTextsByLocale(RealmModel realm, String locale)`
    `Stream<ClientModel>` | `getAlwaysDisplayInConsoleClientsStream(RealmModel realm)` Deprecated.
    `ClientModel` | `getClientByClientId(RealmModel realm, String clientId)` Deprecated.
    `ClientModel` | `getClientById(RealmModel realm, String id)` Deprecated.
    `RoleModel` | `getClientRole(ClientModel client, String name)` Deprecated.
    `Stream<RoleModel>` | `getClientRolesStream(ClientModel client, Integer first, Integer max)` Deprecated.
    `ClientScopeModel` | `getClientScopeById(RealmModel realm, String id)` Deprecated.
    `Map<String,ClientScopeModel>` | `getClientScopes(RealmModel realm, ClientModel client, boolean defaultScopes)` Deprecated.
    `Stream<ClientScopeModel>` | `getClientScopesStream(RealmModel realm)` Deprecated.
    `long` | `getClientsCount(RealmModel realm)` Deprecated.
    `Stream<ClientModel>` | `getClientsStream(RealmModel realm, Integer firstResult, Integer maxResults)` Deprecated.
    `GroupModel` | `getGroupById(RealmModel realm, String id)` Deprecated.
    `Stream<GroupModel>` | `getGroupsByRoleStream(RealmModel realm, RoleModel role, Integer firstResult, Integer maxResults)` Deprecated.
    `Long` | `getGroupsCount(RealmModel realm, Boolean onlyTopGroups)` Deprecated.
    `Long` | `getGroupsCountByNameContaining(RealmModel realm, String search)` Deprecated.
    `Stream<GroupModel>` | `getGroupsStream(RealmModel realm)` Deprecated.
    `Stream<GroupModel>` | `getGroupsStream(RealmModel realm, Stream<String> ids, String search, Integer first, Integer max)` Deprecated.
    `String` | `getLocalizationTextsById(RealmModel realm, String locale, String key)`
    `RealmModel` | `getRealm(String id)` Exact search for a realm by its internal ID.
    `RealmModel` | `getRealmByName(String name)` Exact search for a realm by its name.
    `RoleModel` | `getRealmRole(RealmModel realm, String name)` Deprecated.
    `Stream<RoleModel>` | `getRealmRolesStream(RealmModel realm, Integer first, Integer max)` Deprecated.
    `Stream<RealmModel>` | `getRealmsStream()` Returns realms as a stream.
    `Stream<RealmModel>` | `getRealmsWithProviderTypeStream(Class<?> type)` Returns stream of realms which has component with the given provider type.
    `RoleModel` | `getRoleById(RealmModel realm, String id)` Deprecated.
    `Stream<GroupModel>` | `getTopLevelGroupsStream(RealmModel realm)` Deprecated.
    `Stream<GroupModel>` | `getTopLevelGroupsStream(RealmModel realm, Integer firstResult, Integer maxResults)` Deprecated.
    `void` | `moveGroup(RealmModel realm, GroupModel group, GroupModel toParent)` Deprecated.
    `boolean` | `removeClient(RealmModel realm, String id)` Deprecated.
    `void` | `removeClients(RealmModel realm)` Deprecated.
    `void` | `removeClientScope(RealmModel realm, ClientModel client, ClientScopeModel clientScope)` Deprecated.
    `boolean` | `removeClientScope(RealmModel realm, String id)` Deprecated.
    `void` | `removeClientScopes(RealmModel realm)` Deprecated.
    `void` | `removeExpiredClientInitialAccess()` Removes all expired client initial accesses from all realms.
    `boolean` | `removeGroup(RealmModel realm, GroupModel group)` Deprecated.
    `boolean` | `removeRealm(String id)` Removes realm with the given id.
    `boolean` | `removeRole(RoleModel role)` Deprecated.
    `void` | `removeRoles(ClientModel client)` Deprecated.
    `void` | `removeRoles(RealmModel realm)` Deprecated.
    `void` | `saveLocalizationText(RealmModel realm, String locale, String key, String text)`
    `void` | `saveLocalizationTexts(RealmModel realm, String locale, Map<String,String> localizationTexts)`
    `Stream<ClientModel>` | `searchClientsByClientIdStream(RealmModel realm, String clientId, Integer firstResult, Integer maxResults)` Deprecated.
    `Stream<RoleModel>` | `searchForClientRolesStream(ClientModel client, String search, Integer first, Integer max)` Deprecated.
    `Stream<GroupModel>` | `searchForGroupByNameStream(RealmModel realm, String search, Integer firstResult, Integer maxResults)` Deprecated.
    `Stream<RoleModel>` | `searchForRolesStream(RealmModel realm, String search, Integer first, Integer max)` Deprecated.
    `boolean` | `updateLocalizationText(RealmModel realm, String locale, String key, String text)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.keycloak.models.RealmProvider

      `addClient, addClientRole, addClientRole, addRealmRole, createClientInitialAccessModel, createGroup, createGroup, createGroup, decreaseRemainingCount, getAlwaysDisplayInConsoleClients, getClientByClientId, getClientById, getClientInitialAccessModel, getClientRole, getClientRoles, getClientRoles, getClients, getClients, getClientScopeById, getGroupById, getGroups, getGroupsByRole, getRealmRoles, getRealmRoles, getRealms, getRealmsWithProviderType, getRoleById, getTopLevelGroups, getTopLevelGroups, listClientInitialAccess, listClientInitialAccessStream, removeClient, removeClientInitialAccessModel, removeRole, searchClientsByClientId, searchForClientRoles, searchForGroupByName, searchForRoles`

    - ### Methods inherited from interface org.keycloak.models.ClientProvider

      `getClientsStream`

    - ### Methods inherited from interface org.keycloak.models.ClientScopeProvider

      `addClientScope`

    - ### Methods inherited from interface org.keycloak.models.GroupProvider

      `getGroupsCount, getGroupsStream, getGroupsStream`

    - ### Methods inherited from interface org.keycloak.models.RoleProvider

      `addClientRole, getClientRolesStream, getRealmRolesStream`

- - ### Constructor Detail

    - #### MapRealmProvider

          public MapRealmProvider(KeycloakSession session,
                                  MapStorage<K,MapRealmEntity<K>,RealmModel> realmStore)

  - ### Method Detail

    - #### createRealm

          public RealmModel createRealm(String name)

      Description copied from interface: `RealmProvider`
      Creates new realm with the given name. The internal ID will be generated automatically.
      Specified by:
        `createRealm` in interface `RealmProvider`
      Parameters:
        `name` - String name of the realm
      Returns:
        Model of the created realm.

    - #### createRealm

          public RealmModel createRealm(String id,
                                        String name)

      Description copied from interface: `RealmProvider`
      Created new realm with given ID and name.
      Specified by:
        `createRealm` in interface `RealmProvider`
      Parameters:
        `id` - Internal ID of the realm or `null` if one is to be created by the underlying store
        `name` - String name of the realm
      Returns:
        Model of the created realm.

    - #### getRealm

          public RealmModel getRealm(String id)

      Description copied from interface: `RealmProvider`
      Exact search for a realm by its internal ID.
      Specified by:
        `getRealm` in interface `RealmProvider`
      Parameters:
        `id` - Internal ID of the realm.
      Returns:
        Model of the realm

    - #### getRealmByName

          public RealmModel getRealmByName(String name)

      Description copied from interface: `RealmProvider`
      Exact search for a realm by its name.
      Specified by:
        `getRealmByName` in interface `RealmProvider`
      Parameters:
        `name` - String name of the realm
      Returns:
        Model of the realm

    - #### getRealmsStream

          public Stream<RealmModel> getRealmsStream()

      Description copied from interface: `RealmProvider`
      Returns realms as a stream.
      Specified by:
        `getRealmsStream` in interface `RealmProvider`
      Returns:
        Stream of `RealmModel`. Never returns `null`.

    - #### getRealmsWithProviderTypeStream

          public Stream<RealmModel> getRealmsWithProviderTypeStream(Class<?> type)

      Description copied from interface: `RealmProvider`
      Returns stream of realms which has component with the given provider type.
      Specified by:
        `getRealmsWithProviderTypeStream` in interface `RealmProvider`
      Parameters:
        `type` - `Class<?>` Type of the provider.
      Returns:
        Stream of `RealmModel`. Never returns `null`.

    - #### removeRealm

          public boolean removeRealm(String id)

      Description copied from interface: `RealmProvider`
      Removes realm with the given id.
      Specified by:
        `removeRealm` in interface `RealmProvider`
      Parameters:
        `id` - of realm.
      Returns:
        `true` if the realm was successfully removed.

    - #### removeExpiredClientInitialAccess

          public void removeExpiredClientInitialAccess()

      Description copied from interface: `RealmProvider`
      Removes all expired client initial accesses from all realms.
      Specified by:
        `removeExpiredClientInitialAccess` in interface `RealmProvider`

    - #### saveLocalizationText

          public void saveLocalizationText(RealmModel realm,
                                           String locale,
                                           String key,
                                           String text)

      Specified by:
        `saveLocalizationText` in interface `RealmProvider`

    - #### saveLocalizationTexts

          public void saveLocalizationTexts(RealmModel realm,
                                            String locale,
                                            Map<String,String> localizationTexts)

      Specified by:
        `saveLocalizationTexts` in interface `RealmProvider`

    - #### updateLocalizationText

          public boolean updateLocalizationText(RealmModel realm,
                                                String locale,
                                                String key,
                                                String text)

      Specified by:
        `updateLocalizationText` in interface `RealmProvider`

    - #### deleteLocalizationTextsByLocale

          public boolean deleteLocalizationTextsByLocale(RealmModel realm,
                                                         String locale)

      Specified by:
        `deleteLocalizationTextsByLocale` in interface `RealmProvider`

    - #### deleteLocalizationText

          public boolean deleteLocalizationText(RealmModel realm,
                                                String locale,
                                                String key)

      Specified by:
        `deleteLocalizationText` in interface `RealmProvider`

    - #### getLocalizationTextsById

          public String getLocalizationTextsById(RealmModel realm,
                                                 String locale,
                                                 String key)

      Specified by:
        `getLocalizationTextsById` in interface `RealmProvider`

    - #### addClient

          @Deprecated
          public ClientModel addClient(RealmModel realm,
                                                   String id,
                                                   String clientId)

      Deprecated.
      Description copied from interface: `ClientProvider`
      Adds a client with given internal ID and `clientId` to the given realm.
      Specified by:
        `addClient` in interface `ClientProvider`
      Specified by:
        `addClient` in interface `RealmProvider`
      Parameters:
        `realm` - Realm owning this client.
        `id` - Internal ID of the client or `null` if one is to be created by the underlying store
        `clientId` - String that identifies the client to the external parties. Maps to `client_id` in OIDC or `entityID` in SAML.
      Returns:
        Model of the created client.

    - #### getClientsCount

          @Deprecated
          public long getClientsCount(RealmModel realm)

      Deprecated.
      Description copied from interface: `ClientProvider`
      Returns number of clients in the given realm
      Specified by:
        `getClientsCount` in interface `ClientProvider`
      Specified by:
        `getClientsCount` in interface `RealmProvider`
      Parameters:
        `realm` - Realm.
      Returns:
        Number of the clients in the given realm.

    - #### getClientsStream

          @Deprecated
          public Stream<ClientModel> getClientsStream(RealmModel realm,
                                                                  Integer firstResult,
                                                                  Integer maxResults)

      Deprecated.
      Description copied from interface: `ClientProvider`
      Returns the clients of the given realm as a stream.
      Specified by:
        `getClientsStream` in interface `ClientProvider`
      Parameters:
        `realm` - Realm.
        `firstResult` - First result to return. Ignored if negative or `null`.
        `maxResults` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of the clients. Never returns `null`.

    - #### getAlwaysDisplayInConsoleClientsStream

          @Deprecated
          public Stream<ClientModel> getAlwaysDisplayInConsoleClientsStream(RealmModel realm)

      Deprecated.
      Description copied from interface: `ClientProvider`
      Returns a stream of clients that are expected to always show up in account console.
      Specified by:
        `getAlwaysDisplayInConsoleClientsStream` in interface `ClientProvider`
      Parameters:
        `realm` - Realm owning the clients.
      Returns:
        Stream of the clients. Never returns `null`.

    - #### removeClient

          @Deprecated
          public boolean removeClient(RealmModel realm,
                                                  String id)

      Deprecated.
      Description copied from interface: `ClientProvider`
      Removes given client from the given realm.
      Specified by:
        `removeClient` in interface `ClientProvider`
      Parameters:
        `realm` - Realm.
        `id` - Internal ID of the client
      Returns:
        `true` if the client existed and has been removed, `false` otherwise.

    - #### removeClients

          @Deprecated
          public void removeClients(RealmModel realm)

      Deprecated.
      Description copied from interface: `ClientProvider`
      Removes all clients from the given realm.
      Specified by:
        `removeClients` in interface `ClientProvider`
      Parameters:
        `realm` - Realm.

    - #### getClientById

          @Deprecated
          public ClientModel getClientById(RealmModel realm,
                                                       String id)

      Deprecated.
      Description copied from interface: `ClientLookupProvider`
      Exact search for a client by its internal ID.
      Specified by:
        `getClientById` in interface `ClientLookupProvider`
      Parameters:
        `realm` - Realm to limit the search.
        `id` - Internal ID
      Returns:
        Model of the client, or `null` if no client is found.

    - #### getClientByClientId

          @Deprecated
          public ClientModel getClientByClientId(RealmModel realm,
                                                             String clientId)

      Deprecated.
      Description copied from interface: `ClientLookupProvider`
      Exact search for a client by its public client identifier.
      Specified by:
        `getClientByClientId` in interface `ClientLookupProvider`
      Parameters:
        `realm` - Realm to limit the search for clients.
        `clientId` - String that identifies the client to the external parties. Maps to `client_id` in OIDC or `entityID` in SAML.
      Returns:
        Model of the client, or `null` if no client is found.

    - #### searchClientsByClientIdStream

          @Deprecated
          public Stream<ClientModel> searchClientsByClientIdStream(RealmModel realm,
                                                                               String clientId,
                                                                               Integer firstResult,
                                                                               Integer maxResults)

      Deprecated.
      Description copied from interface: `ClientLookupProvider`
      Case-insensitive search for clients that contain the given string in their public client identifier.
      Specified by:
        `searchClientsByClientIdStream` in interface `ClientLookupProvider`
      Parameters:
        `realm` - Realm to limit the search for clients.
        `clientId` - Searched substring of the public client identifier (`client_id` in OIDC or `entityID` in SAML.)
        `firstResult` - First result to return. Ignored if negative or `null`.
        `maxResults` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of ClientModel or an empty stream if no client is found. Never returns `null`.

    - #### addClientScopes

          @Deprecated
          public void addClientScopes(RealmModel realm,
                                                  ClientModel client,
                                                  Set<ClientScopeModel> clientScopes,
                                                  boolean defaultScope)

      Deprecated.
      Description copied from interface: `ClientProvider`
      Assign clientScopes to the client. Add as default scopes (if parameter 'defaultScope' is true) or optional scopes (if parameter 'defaultScope' is false)
      Specified by:
        `addClientScopes` in interface `ClientProvider`
      Parameters:
        `realm` - Realm.
        `client` - Client.
        `clientScopes` - to be assigned
        `defaultScope` - if true the scopes are assigned as default, or optional in case of false

    - #### removeClientScope

          @Deprecated
          public void removeClientScope(RealmModel realm,
                                                    ClientModel client,
                                                    ClientScopeModel clientScope)

      Deprecated.
      Description copied from interface: `ClientProvider`
      Unassign clientScope from the client.
      Specified by:
        `removeClientScope` in interface `ClientProvider`
      Parameters:
        `realm` - Realm.
        `client` - Client.
        `clientScope` - to be unassigned

    - #### getClientScopes

          @Deprecated
          public Map<String,ClientScopeModel> getClientScopes(RealmModel realm,
                                                                          ClientModel client,
                                                                          boolean defaultScopes)

      Deprecated.
      Description copied from interface: `ClientLookupProvider`
      Return all default scopes (if `defaultScope` is `true`) or all optional scopes (if `defaultScope` is `false`) linked with the client
      Specified by:
        `getClientScopes` in interface `ClientLookupProvider`
      Parameters:
        `realm` - Realm
        `client` - Client
        `defaultScopes` - if true default scopes, if false optional scopes, are returned
      Returns:
        map where key is the name of the clientScope, value is particular clientScope. Returns empty map if no scopes linked (never returns null).

    - #### getClientScopeById

          @Deprecated
          public ClientScopeModel getClientScopeById(RealmModel realm,
                                                                 String id)

      Deprecated.
      Description copied from interface: `ClientScopeLookupProvider`
      Exact search for a client scope by its internal ID..
      Specified by:
        `getClientScopeById` in interface `RealmProvider`
      Specified by:
        `getClientScopeById` in interface `ClientScopeLookupProvider`
      Parameters:
        `realm` - Realm.
        `id` - Internal ID of the role.
      Returns:
        Model of the client scope.

    - #### getClientScopesStream

          @Deprecated
          public Stream<ClientScopeModel> getClientScopesStream(RealmModel realm)

      Deprecated.
      Description copied from interface: `ClientScopeProvider`
      Returns all the client scopes of the given realm as a stream.
      Specified by:
        `getClientScopesStream` in interface `ClientScopeProvider`
      Parameters:
        `realm` - Realm.
      Returns:
        Stream of the client scopes. Never returns `null`.

    - #### addClientScope

          @Deprecated
          public ClientScopeModel addClientScope(RealmModel realm,
                                                             String id,
                                                             String name)

      Deprecated.
      Description copied from interface: `ClientScopeProvider`
      Creates new client scope with given internal ID and `name` to the given realm. Spaces in `name` will be replaced by underscore so that scope name can be used as value of scope parameter.
      Specified by:
        `addClientScope` in interface `ClientScopeProvider`
      Parameters:
        `realm` - Realm owning this client scope.
        `id` - Internal ID of the client scope or `null` if one is to be created by the underlying store
        `name` - String name of the client scope.
      Returns:
        Model of the created client scope.

    - #### removeClientScope

          @Deprecated
          public boolean removeClientScope(RealmModel realm,
                                                       String id)

      Deprecated.
      Description copied from interface: `ClientScopeProvider`
      Removes client scope from the given realm.
      Specified by:
        `removeClientScope` in interface `ClientScopeProvider`
      Parameters:
        `realm` - Realm.
        `id` - Internal ID of the client scope
      Returns:
        `true` if the client scope existed and has been removed, `false` otherwise.

    - #### removeClientScopes

          @Deprecated
          public void removeClientScopes(RealmModel realm)

      Deprecated.
      Description copied from interface: `ClientScopeProvider`
      Removes all client scopes from the given realm.
      Specified by:
        `removeClientScopes` in interface `ClientScopeProvider`
      Parameters:
        `realm` - Realm.

    - #### moveGroup

          @Deprecated
          public void moveGroup(RealmModel realm,
                                            GroupModel group,
                                            GroupModel toParent)

      Deprecated.
      Description copied from interface: `GroupProvider`
      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. group without parent group) child of some group,
      - making a child group top level group (i.e. removing its parent group).
      Specified by:
        `moveGroup` in interface `GroupProvider`
      Specified by:
        `moveGroup` in interface `RealmProvider`
      Parameters:
        `realm` - Realm owning this group.
        `group` - Group to update.
        `toParent` - New parent group, or `null` if we are moving the group to top level group.

    - #### getGroupById

          @Deprecated
          public GroupModel getGroupById(RealmModel realm,
                                                     String id)

      Deprecated.
      Description copied from interface: `GroupLookupProvider`
      Returns a group from the given realm with the corresponding id
      Specified by:
        `getGroupById` in interface `RealmProvider`
      Specified by:
        `getGroupById` in interface `GroupLookupProvider`
      Parameters:
        `realm` - Realm.
        `id` - Id.
      Returns:
        GroupModel with the corresponding id.

    - #### getGroupsCount

          @Deprecated
          public Long getGroupsCount(RealmModel realm,
                                                 Boolean onlyTopGroups)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Returns a number of groups/top level groups (i.e. groups without parent group) for the given realm.
      Specified by:
        `getGroupsCount` in interface `GroupProvider`
      Specified by:
        `getGroupsCount` in interface `RealmProvider`
      Parameters:
        `realm` - Realm.
        `onlyTopGroups` - When true the function returns a count of top level groups only.
      Returns:
        Number of groups/top level groups.

    - #### getGroupsCountByNameContaining

          @Deprecated
          public Long getGroupsCountByNameContaining(RealmModel realm,
                                                                 String search)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Returns number of groups with the given string in name for the given realm.
      Specified by:
        `getGroupsCountByNameContaining` in interface `GroupProvider`
      Specified by:
        `getGroupsCountByNameContaining` in interface `RealmProvider`
      Parameters:
        `realm` - Realm.
        `search` - Case insensitive string which will be searched for.
      Returns:
        Number of groups with the given string in its name.

    - #### removeGroup

          @Deprecated
          public boolean removeGroup(RealmModel realm,
                                                 GroupModel group)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Removes the given group for the given realm.
      Specified by:
        `removeGroup` in interface `GroupProvider`
      Specified by:
        `removeGroup` in interface `RealmProvider`
      Parameters:
        `realm` - Realm.
        `group` - Group.
      Returns:
        true if the group was removed, false if group doesn't exist or doesn't belong to the given realm

    - #### createGroup

          @Deprecated
          public GroupModel createGroup(RealmModel realm,
                                                    String id,
                                                    String name,
                                                    GroupModel toParent)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Creates a new group with the given name, id, name and parent to the given realm.
      Specified by:
        `createGroup` in interface `GroupProvider`
      Specified by:
        `createGroup` in interface `RealmProvider`
      Parameters:
        `realm` - Realm.
        `id` - Id, will be generated if `null`.
        `name` - Name.
        `toParent` - Parent group, or `null` if the group is top level group
      Returns:
        Model of the created group

    - #### addTopLevelGroup

          @Deprecated
          public void addTopLevelGroup(RealmModel realm,
                                                   GroupModel subGroup)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Removes parent group for the given group in the given realm.
      Specified by:
        `addTopLevelGroup` in interface `GroupProvider`
      Specified by:
        `addTopLevelGroup` in interface `RealmProvider`
      Parameters:
        `realm` - Realm.
        `subGroup` - Group.

    - #### getGroupsStream

          @Deprecated
          public Stream<GroupModel> getGroupsStream(RealmModel realm)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Returns groups for the given realm.
      Specified by:
        `getGroupsStream` in interface `GroupProvider`
      Parameters:
        `realm` - Realm.
      Returns:
        Stream of groups in the Realm.

    - #### getGroupsStream

          @Deprecated
          public Stream<GroupModel> getGroupsStream(RealmModel realm,
                                                                Stream<String> ids,
                                                                String search,
                                                                Integer first,
                                                                Integer max)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Returns a paginated stream of groups with given ids and given search value in group names.
      Specified by:
        `getGroupsStream` in interface `GroupProvider`
      Parameters:
        `realm` - Realm.
        `ids` - Stream of ids.
        `search` - Case insensitive string which will be searched for. Ignored if null.
        `first` - Index of the first result to return. Ignored if negative or `null`.
        `max` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of desired groups. Never returns `null`.

    - #### getGroupsByRoleStream

          @Deprecated
          public Stream<GroupModel> getGroupsByRoleStream(RealmModel realm,
                                                                      RoleModel role,
                                                                      Integer firstResult,
                                                                      Integer maxResults)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Returns groups with the given role in the given realm.
      Specified by:
        `getGroupsByRoleStream` in interface `GroupProvider`
      Parameters:
        `realm` - Realm.
        `role` - Role.
        `firstResult` - First result to return. Ignored if negative or `null`.
        `maxResults` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of groups with the given role. Never returns `null`.

    - #### getTopLevelGroupsStream

          @Deprecated
          public Stream<GroupModel> getTopLevelGroupsStream(RealmModel realm)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Returns all top level groups (i.e. groups without parent group) for the given realm.
      Specified by:
        `getTopLevelGroupsStream` in interface `GroupProvider`
      Parameters:
        `realm` - Realm.
      Returns:
        Stream of all top level groups in the realm. Never returns `null`.

    - #### getTopLevelGroupsStream

          @Deprecated
          public Stream<GroupModel> getTopLevelGroupsStream(RealmModel realm,
                                                                        Integer firstResult,
                                                                        Integer maxResults)

      Deprecated.
      Description copied from interface: `GroupProvider`
      Returns top level groups (i.e. groups without parent group) for the given realm.
      Specified by:
        `getTopLevelGroupsStream` in interface `GroupProvider`
      Parameters:
        `realm` - Realm.
        `firstResult` - First result to return. Ignored if negative or `null`.
        `maxResults` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of top level groups in the realm. Never returns `null`.

    - #### searchForGroupByNameStream

          @Deprecated
          public Stream<GroupModel> searchForGroupByNameStream(RealmModel realm,
                                                                           String search,
                                                                           Integer firstResult,
                                                                           Integer maxResults)

      Deprecated.
      Description copied from interface: `GroupLookupProvider`
      Returns groups with the given string in name for the given realm.
      Specified by:
        `searchForGroupByNameStream` in interface `GroupLookupProvider`
      Parameters:
        `realm` - Realm.
        `search` - Case sensitive searched string.
        `firstResult` - First result to return. Ignored if negative or `null`.
        `maxResults` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of groups with the given string in name. Never returns `null`.

    - #### addRealmRole

          @Deprecated
          public RoleModel addRealmRole(RealmModel realm,
                                                    String id,
                                                    String name)

      Deprecated.
      Description copied from interface: `RoleProvider`
      Adds a realm role with given internal ID and `name` to the given realm.
      Specified by:
        `addRealmRole` in interface `RealmProvider`
      Specified by:
        `addRealmRole` in interface `RoleProvider`
      Parameters:
        `realm` - Realm owning this role.
        `id` - Internal ID of the role or `null` if one is to be created by the underlying store
        `name` - String name of the role.
      Returns:
        Model of the created client.

    - #### getRealmRole

          @Deprecated
          public RoleModel getRealmRole(RealmModel realm,
                                                    String name)

      Deprecated.
      Description copied from interface: `RoleLookupProvider`
      Exact search for a role by given name.
      Specified by:
        `getRealmRole` in interface `RealmProvider`
      Specified by:
        `getRealmRole` in interface `RoleLookupProvider`
      Parameters:
        `realm` - Realm.
        `name` - String name of the role.
      Returns:
        Model of the role, or `null` if no role is found.

    - #### getRealmRolesStream

          @Deprecated
          public Stream<RoleModel> getRealmRolesStream(RealmModel realm,
                                                                   Integer first,
                                                                   Integer max)

      Deprecated.
      Description copied from interface: `RoleProvider`
      Returns the realm roles of the given realm as a stream.
      Specified by:
        `getRealmRolesStream` in interface `RoleProvider`
      Parameters:
        `realm` - Realm.
        `first` - First result to return. Ignored if negative or `null`.
        `max` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of the roles. Never returns `null`.

    - #### removeRole

          @Deprecated
          public boolean removeRole(RoleModel role)

      Deprecated.
      Description copied from interface: `RoleProvider`
      Removes given realm role from the given realm.
      Specified by:
        `removeRole` in interface `RoleProvider`
      Parameters:
        `role` - Role to be removed.
      Returns:
        `true` if the role existed and has been removed, `false` otherwise.

    - #### removeRoles

          @Deprecated
          public void removeRoles(RealmModel realm)

      Deprecated.
      Description copied from interface: `RoleProvider`
      Removes all roles from the given realm.
      Specified by:
        `removeRoles` in interface `RoleProvider`
      Parameters:
        `realm` - Realm.

    - #### addClientRole

          @Deprecated
          public RoleModel addClientRole(ClientModel client,
                                                     String id,
                                                     String name)

      Deprecated.
      Description copied from interface: `RoleProvider`
      Adds a client role with given internal ID and `name` to the given client.
      Specified by:
        `addClientRole` in interface `RoleProvider`
      Parameters:
        `client` - Client owning this role.
        `id` - Internal ID of the client role or `null` if one is to be created by the underlying store.
        `name` - String name of the role.
      Returns:
        Model of the created role.

    - #### getClientRolesStream

          @Deprecated
          public Stream<RoleModel> getClientRolesStream(ClientModel client,
                                                                    Integer first,
                                                                    Integer max)

      Deprecated.
      Description copied from interface: `RoleProvider`
      Returns the client roles of the given client.
      Specified by:
        `getClientRolesStream` in interface `RoleProvider`
      Parameters:
        `client` - Client.
        `first` - First result to return. Ignored if negative or `null`.
        `max` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of the roles. Never returns `null`.

    - #### removeRoles

          @Deprecated
          public void removeRoles(ClientModel client)

      Deprecated.
      Description copied from interface: `RoleProvider`
      Removes all roles from the given client.
      Specified by:
        `removeRoles` in interface `RoleProvider`
      Parameters:
        `client` - Client.

    - #### getRoleById

          @Deprecated
          public RoleModel getRoleById(RealmModel realm,
                                                   String id)

      Deprecated.
      Description copied from interface: `RoleLookupProvider`
      Exact search for a role by its internal ID..
      Specified by:
        `getRoleById` in interface `RoleLookupProvider`
      Parameters:
        `realm` - Realm.
        `id` - Internal ID of the role.
      Returns:
        Model of the role.

    - #### searchForRolesStream

          @Deprecated
          public Stream<RoleModel> searchForRolesStream(RealmModel realm,
                                                                    String search,
                                                                    Integer first,
                                                                    Integer max)

      Deprecated.
      Description copied from interface: `RoleLookupProvider`
      Case-insensitive search for roles that contain the given string in their name or description.
      Specified by:
        `searchForRolesStream` in interface `RoleLookupProvider`
      Parameters:
        `realm` - Realm.
        `search` - Searched substring of the role's name or description.
        `first` - First result to return. Ignored if negative or `null`.
        `max` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of the realm roles their name or description contains given search string. Never returns `null`.

    - #### getClientRole

          @Deprecated
          public RoleModel getClientRole(ClientModel client,
                                                     String name)

      Deprecated.
      Description copied from interface: `RoleLookupProvider`
      Exact search for a client role by given name.
      Specified by:
        `getClientRole` in interface `RoleLookupProvider`
      Parameters:
        `client` - Client.
        `name` - String name of the role.
      Returns:
        Model of the role, or `null` if no role is found.

    - #### searchForClientRolesStream

          @Deprecated
          public Stream<RoleModel> searchForClientRolesStream(ClientModel client,
                                                                          String search,
                                                                          Integer first,
                                                                          Integer max)

      Deprecated.
      Description copied from interface: `RoleLookupProvider`
      Case-insensitive search for client roles that contain the given string in their name or description.
      Specified by:
        `searchForClientRolesStream` in interface `RoleLookupProvider`
      Parameters:
        `client` - Client.
        `search` - String to search by role's name or description.
        `first` - First result to return. Ignored if negative or `null`.
        `max` - Maximum number of results to return. Ignored if negative or `null`.
      Returns:
        Stream of the client roles their name or description contains given search string. Never returns `null`.

    - #### close

          public void close()

      Specified by:
        `close` in interface `Provider`

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