Class ProtectedResource

java.lang.Object
org.keycloak.authorization.client.resource.ProtectedResource

public class ProtectedResource extends Object
An entry point for managing resources using the Protection API.
Author:
Pedro Igor
  • Method Details

    • create

      Creates a new resource.
      Parameters:
      resource - the resource data
      Returns:
      a RegistrationResponse
    • update

      public void update(ResourceRepresentation resource)
      Updates a resource.
      Parameters:
      resource - the resource data
    • findById

      public ResourceRepresentation findById(String id)
      Query the server for a resource given its id.
      Parameters:
      id - the resource id
      Returns:
      a ResourceRepresentation
    • findByName

      public ResourceRepresentation findByName(String name)
      Query the server for a resource given its name where the owner is the resource server itself.
      Parameters:
      name - the resource name
      Returns:
      a ResourceRepresentation
    • findByName

      public ResourceRepresentation findByName(String name, String ownerId)
      Query the server for a resource given its name and a given ownerId.
      Parameters:
      name - the resource name
      ownerId - the owner id
      Returns:
      a ResourceRepresentation
    • find

      public String[] find(String id, String name, String uri, String owner, String type, String scope, boolean matchingUri, Integer firstResult, Integer maxResult)
      Query the server for any resource with the matching arguments.
      Parameters:
      id - the resource id
      name - the resource name
      uri - the resource uri
      owner - the resource owner
      type - the resource type
      scope - the resource scope
      matchingUri - the resource uri. Use this parameter to lookup a resource that best match the given uri
      firstResult - the position of the first resource to retrieve
      maxResult - the maximum number of resources to retrieve
      Returns:
      an array of strings with the resource ids
    • find

      public <R> R find(String id, String name, String uri, String owner, String type, String scope, boolean matchingUri, boolean deep, Integer firstResult, Integer maxResult)

      Query the server for any resource with the matching arguments, where queries by name are partial.

      Parameters:
      id - the resource id
      name - the resource name
      uri - the resource uri
      owner - the resource owner
      type - the resource type
      scope - the resource scope
      matchingUri - the resource uri. Use this parameter to lookup a resource that best match the given uri
      deep - if the result should be a list of resource representations with details about the resource. If false, only ids are returned
      firstResult - the position of the first resource to retrieve
      maxResult - the maximum number of resources to retrieve
      Returns:
      a list of resource representations or an array of strings representing resource ids, depending on the generic type
    • find

      public <R> R find(String id, String name, String uri, String owner, String type, String scope, boolean matchingUri, boolean exactName, boolean deep, Integer firstResult, Integer maxResult)
      Query the server for any resource with the matching arguments.
      Parameters:
      id - the resource id
      name - the resource name
      uri - the resource uri
      owner - the resource owner
      type - the resource type
      scope - the resource scope
      matchingUri - the resource uri. Use this parameter to lookup a resource that best match the given uri
      exactName - if the the name provided should have a exact match
      deep - if the result should be a list of resource representations with details about the resource. If false, only ids are returned
      firstResult - the position of the first resource to retrieve
      maxResult - the maximum number of resources to retrieve
      Returns:
      a list of resource representations or an array of strings representing resource ids, depending on the generic type
    • findAll

      public String[] findAll()
      Query the server for all resources.
      Returns:
    • delete

      public void delete(String id)
      Deletes a resource with the given id.
      Parameters:
      id - the resource id
    • findByUri

      public List<ResourceRepresentation> findByUri(String uri)
      Query the server for all resources with the given uri.
      Parameters:
      uri - the resource uri
    • findByMatchingUri

      public List<ResourceRepresentation> findByMatchingUri(String uri)
      Returns a list of resources that best matches the given uri. This method queries the server for resources whose ResourceRepresentation#uri best matches the given uri.
      Parameters:
      uri - the resource uri to match
      Returns:
      a list of resources