Class ResourceType

  • All Implemented Interfaces:
    com.fasterxml.jackson.core.TreeNode, com.fasterxml.jackson.databind.JsonSerializable, com.fasterxml.jackson.databind.node.JsonNodeCreator, ScimNode, Serializable, Iterable<com.fasterxml.jackson.databind.JsonNode>

    public class ResourceType
    extends ResourceNode
    author Pascal Knueppel
    created at: 03.10.2019 - 19:36

    represents a resource type in SCIM. A resource type defines an endpoint definition that can be used by clients.
    See Also:
    Serialized Form
    • Constructor Detail

      • ResourceType

        protected ResourceType​(SchemaFactory schemaFactory,
                               String resourceDocument)
      • ResourceType

        protected ResourceType​(SchemaFactory schemaFactory,
                               com.fasterxml.jackson.databind.JsonNode resourceTypeDocument)
    • Method Detail

      • getMainSchema

        public Schema getMainSchema()
        Returns:
        the main schema that represents this resource type
      • getRequiredResourceSchemaExtensions

        public List<Schema> getRequiredResourceSchemaExtensions()
        Returns:
        the required resource schema extensions that represents this resource type
      • getNotRequiredResourceSchemaExtensions

        public List<Schema> getNotRequiredResourceSchemaExtensions()
        Returns:
        the not required resource schema extensions that represents this resource type
      • getAllSchemas

        public List<Schema> getAllSchemas()
        this method will extract all Schema definitions that belong to this resource type. The first entry in the list will always be the main Schema referenced in the attribute getSchema(). All other Schemas in the list will be the extensions of this resource
        Returns:
        a list of all Schema definitions that describe this resource type
      • getResourceSchema

        public ResourceType.ResourceSchema getResourceSchema​(com.fasterxml.jackson.databind.JsonNode resourceDocument)
        will find the meta resource schema and its extensions of this resource type that apply to the given document
        Parameters:
        resourceDocument - a document that should be validated against its schemas
        Returns:
        a holder object that contains the meta schemata that can be used to validate the given document
      • getEndpoint

        public String getEndpoint()
        The resource type's HTTP-addressable endpoint relative to the Base URL of the service provider, e.g., "Users". REQUIRED.
      • getName

        public String getName()
        The resource type name. When applicable, service providers MUST specify the name, e.g., "User" or "Group". This name is referenced by the "meta.resourceType" attribute in all resources. REQUIRED.
      • getDescription

        public Optional<String> getDescription()
        The resource type's human-readable description. When applicable, service providers MUST specify the description. OPTIONAL.
      • getSchema

        public String getSchema()
        The resource type's primary/base schema URI, e.g., "urn:ietf:params:scim:schemas:core:2.0:User". This MUST be equal to the "id" attribute of the associated "Schema" resource. REQUIRED.
      • isDisabled

        public boolean isDisabled()
        Returns:
        true if this resource type was disabled, false else
      • setDisabled

        public void setDisabled​(Boolean disabled)
        disables or enables this resourcetype