Class Schema


  • public final class Schema
    extends Object
    Determines the objects supported by a Connector. The Schema object is used to represent the basic objects that a connector supports. This does not prevent a connector from supporting more. Rather, this is informational for the caller of the connector to understand a minimum support level. The schema defines 4 primary data structures
    1. Declared ObjectClasses (getObjectClassInfo()).
    2. Declared OperationOptionInfo (getOperationOptionInfo()).
    3. Supported ObjectClasses by operation ( getSupportedObjectClassesByOperation()).
    4. Supported OperationOptionInfo by operation( {@link #getSupportedOptionsByOperation()()}).
    TODO: add more to describe and what is expected from this call and how it is used.. based on OperationalAttribute etc..
    • Method Detail

      • getObjectClassInfo

        public Set<ObjectClassInfo> getObjectClassInfo()
        Returns the set of object classes that are defined in the schema, regardless of which operations support them.
      • findObjectClassInfo

        public ObjectClassInfo findObjectClassInfo​(String type)
        Returns the ObjectClassInfo for the given type.
        Parameters:
        type - The type to find.
        Returns:
        the ObjectClassInfo for the given type or null if not found.
      • getOperationOptionInfo

        public Set<OperationOptionInfo> getOperationOptionInfo()
        Returns the set of operation options that are defined in the schema, regardless of which operations support them.
        Returns:
        The options defined in this schema.
      • findOperationOptionInfo

        public OperationOptionInfo findOperationOptionInfo​(String name)
        Returns the OperationOptionInfo for the given name.
        Parameters:
        name - The name to find.
        Returns:
        the OperationOptionInfo for the given name or null if not found.
      • getSupportedObjectClassesByOperation

        public Set<ObjectClassInfo> getSupportedObjectClassesByOperation​(Class<? extends APIOperation> apiop)
        Returns the supported object classes for the given operation.
        Parameters:
        apiop - The operation.
        Returns:
        the supported object classes for the given operation.
      • getSupportedOptionsByOperation

        public Set<OperationOptionInfo> getSupportedOptionsByOperation​(Class<? extends APIOperation> apiop)
        Returns the supported options for the given operation.
        Parameters:
        apiop - The operation.
        Returns:
        the supported options for the given operation.
      • getSupportedObjectClassesByOperation

        public Map<Class<? extends APIOperation>,​Set<ObjectClassInfo>> getSupportedObjectClassesByOperation()
        Returns the set of object classes that apply to a particular operation.
        Returns:
        the set of object classes that apply to a particular operation.
      • getSupportedOptionsByOperation

        public Map<Class<? extends APIOperation>,​Set<OperationOptionInfo>> getSupportedOptionsByOperation()
        Returns the set of operation options that apply to a particular operation.
        Returns:
        the set of operation options that apply to a particular operation.