Package org.keycloak.authorization.store
Interface ResourceStore
- 
- All Known Implementing Classes:
- JPAResourceStore,- MapResourceStore,- StoreFactoryCacheSession.ResourceCache
 
 public interface ResourceStoreAResourceStoreis responsible to manage the persistence ofResourceinstances.- Author:
- Pedro Igor
 
- 
- 
Method SummaryAll Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default Resourcecreate(ResourceServer resourceServer, String name, String owner)Creates aResourceinstance backed by this persistent storage implementation.Resourcecreate(ResourceServer resourceServer, String id, String name, String owner)Creates aResourceinstance backed by this persistent storage implementation.voiddelete(RealmModel realm, String id)Removes aResourceinstance, with the givenidfrom the persistent storage.List<Resource>find(RealmModel realm, ResourceServer resourceServer, Map<Resource.FilterOption,String[]> attributes, Integer firstResult, Integer maxResults)Finds allResourceinstances associated with a given resource server.ResourcefindById(RealmModel realm, ResourceServer resourceServer, String id)Returns aResourceinstance based on its identifier.default ResourcefindByName(ResourceServer resourceServer, String name)Find aResourceby its name where the owner is the resource server itself.ResourcefindByName(ResourceServer resourceServer, String name, String ownerId)Find aResourceby its name where the owner is the givenownerId.default List<Resource>findByOwner(RealmModel realm, ResourceServer resourceServer, String ownerId)Finds allResourceinstances with the givenownerId.voidfindByOwner(RealmModel realm, ResourceServer resourceServer, String ownerId, Consumer<Resource> consumer)List<Resource>findByResourceServer(ResourceServer resourceServer)Finds allResourceinstances associated with a given resource server.default List<Resource>findByScopes(ResourceServer resourceServer, Set<Scope> scopes)Finds allResourceassociated with a given scope.voidfindByScopes(ResourceServer resourceServer, Set<Scope> scopes, Consumer<Resource> consumer)default List<Resource>findByType(ResourceServer resourceServer, String type)Finds allResourcefromResourceServerwith the given type.voidfindByType(ResourceServer resourceServer, String type, String owner, Consumer<Resource> consumer)Finds allResourcewith the given type.voidfindByType(ResourceServer resourceServer, String type, Consumer<Resource> consumer)Finds allResourcefromResourceServerwith the given type.voidfindByTypeInstance(ResourceServer resourceServer, String type, Consumer<Resource> consumer)Finds allResourceby type where client represented by theresourceServeris not the owner
 
- 
- 
- 
Method Detail- 
createdefault Resource create(ResourceServer resourceServer, String name, String owner) Creates a Resourceinstance backed by this persistent storage implementation.- Parameters:
- resourceServer- the resource server to where the given resource belongs to. Cannot be- null.
- name- the name of this resource. It must be unique.
- owner- the owner of this resource or null if the resource server is the owner
- Returns:
- an instance backed by the underlying storage implementation
 
 - 
createResource create(ResourceServer resourceServer, String id, String name, String owner) Creates a Resourceinstance backed by this persistent storage implementation.- Parameters:
- resourceServer- the resource server to where the given resource belongs to. Cannot be- null.
- id- the id of this resource. It must be unique. Will be randomly generated if null.
- name- the name of this resource. It must be unique.
- owner- the owner of this resource or null if the resource server is the owner
- Returns:
- an instance backed by the underlying storage implementation
 
 - 
deletevoid delete(RealmModel realm, String id) Removes aResourceinstance, with the givenidfrom the persistent storage.- Parameters:
- realm- the realm. Cannot be- null.
- id- the identifier of an existing resource instance
 
 - 
findByIdResource findById(RealmModel realm, ResourceServer resourceServer, String id) Returns aResourceinstance based on its identifier.- Parameters:
- realm- the realm. Cannot be- null.
- resourceServer- the resource server. Ignored if- null
- id- the identifier of an existing resource instance
- Returns:
- the resource instance with the given identifier or null if no instance was found
 
 - 
findByOwnerdefault List<Resource> findByOwner(RealmModel realm, ResourceServer resourceServer, String ownerId) Finds allResourceinstances with the givenownerId.- Parameters:
- realm- the realm. Cannot be- null.
- resourceServer- resource server. Ignored if- null
- ownerId- the identifier of the owner
- Returns:
- a list with all resource instances owned by the given owner
 
 - 
findByOwnervoid findByOwner(RealmModel realm, ResourceServer resourceServer, String ownerId, Consumer<Resource> consumer) 
 - 
findByResourceServerList<Resource> findByResourceServer(ResourceServer resourceServer) Finds allResourceinstances associated with a given resource server.- Parameters:
- resourceServer- the identifier of the resource server. Cannot be- null.
- Returns:
- a list with all resources associated with the given resource server
 
 - 
findList<Resource> find(RealmModel realm, ResourceServer resourceServer, Map<Resource.FilterOption,String[]> attributes, Integer firstResult, Integer maxResults) Finds allResourceinstances associated with a given resource server.- Parameters:
- realm- the realm. Cannot be- null.
- resourceServer- the identifier of the resource server. Ignored if- null.
- attributes- a map holding the attributes that will be used as a filter; possible filter options are given by- Resource.FilterOption
- firstResult- first result to return. Ignored if negative or- null.
- maxResults- maximum number of results to return. Ignored if negative or- null.
- Returns:
- a list with all resources associated with the given resource server
- Throws:
- IllegalArgumentException- when there is an unknown attribute in the- attributesmap
 
 - 
findByScopesdefault List<Resource> findByScopes(ResourceServer resourceServer, Set<Scope> scopes) Finds allResourceassociated with a given scope.- Parameters:
- resourceServer- the resource server. Cannot be- null.
- scopes- one or more scope identifiers
- Returns:
- a list of resources associated with the given scope(s)
 
 - 
findByScopesvoid findByScopes(ResourceServer resourceServer, Set<Scope> scopes, Consumer<Resource> consumer) 
 - 
findByNamedefault Resource findByName(ResourceServer resourceServer, String name) Find aResourceby its name where the owner is the resource server itself.- Parameters:
- resourceServer- the resource server. Cannot be- null.
- name- the name of the resource
- Returns:
- a resource with the given name
 
 - 
findByNameResource findByName(ResourceServer resourceServer, String name, String ownerId) Find aResourceby its name where the owner is the givenownerId.- Parameters:
- resourceServer- the identifier of the resource server. Cannot be- null.
- name- the name of the resource
- ownerId- the owner id
- Returns:
- a resource with the given name
 
 - 
findByTypedefault List<Resource> findByType(ResourceServer resourceServer, String type) Finds allResourcefromResourceServerwith the given type.- Parameters:
- resourceServer- the resource server. Cannot be- null.
- type- the type of the resource
- Returns:
- a list of resources with the given type
 
 - 
findByTypevoid findByType(ResourceServer resourceServer, String type, Consumer<Resource> consumer) Finds allResourcefromResourceServerwith the given type.- Parameters:
- resourceServer- the resource server id. Cannot be- null.
- type- the type of the resource
- consumer- the result consumer
 
 - 
findByTypevoid findByType(ResourceServer resourceServer, String type, String owner, Consumer<Resource> consumer) Finds allResourcewith the given type.- Parameters:
- resourceServer- the resource server id. Cannot be- null
- type- the type of the resource
- owner- the resource owner or null for any resource with a given type
- consumer- the result consumer
 
 - 
findByTypeInstancevoid findByTypeInstance(ResourceServer resourceServer, String type, Consumer<Resource> consumer) Finds allResourceby type where client represented by theresourceServeris not the owner- Parameters:
- resourceServer- the resourceServer. Cannot be- null.
- type- searched type
- consumer- a consumer that will be fed with the resulting resources
 
 
- 
 
-