Interface EndpointQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidCatalogQuery, OsidExtensibleQuery, OsidFederateableQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidQuery, OsidSourceableQuery, Suppliable

public interface EndpointQuery extends OsidCatalogQuery

This is the query for searching endpoints. Each method specifies an AND term while multiple invocations of the same method produce a nested OR.

  • Method Details

    • matchResourceId

      void matchResourceId(Id resourceId, boolean match)
      Sets the resource Id for this query.
      Parameters:
      resourceId - a resource Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - resourceId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearResourceIdTerms

      void clearResourceIdTerms()
      Clears the resource Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsResourceQuery

      boolean supportsResourceQuery()
      Tests if a ResourceQuery is available.
      Returns:
      true if a resource query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getResourceQuery

      ResourceQuery getResourceQuery()
      Gets the query for a resource. Multiple retrievals produce a nested OR term.
      Returns:
      the resource query
      Throws:
      UnimplementedException - supportsResourceQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsResourceQuery()} is {@code true}.
    • matchAnyResource

      void matchAnyResource(boolean match)
      Matches endpoints with any resource.
      Parameters:
      match - true to match endpoints with any resource, false to match endpoints with no resources
      Compliance:
      mandatory - This method must be implemented.
    • clearResourceTerms

      void clearResourceTerms()
      Clears the resource terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAncestorEndpointId

      void matchAncestorEndpointId(Id endpointid, boolean match)
      Sets the endpoint Id for this query to match endpoints that have the specified endpoint as an ancestor.
      Parameters:
      endpointid - a endpoint Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - endpointId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorEndpointIdTerms

      void clearAncestorEndpointIdTerms()
      Clears the ancestor endpoint Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsAncestorEndpointQuery

      boolean supportsAncestorEndpointQuery()
      Tests if a EndpointQuery is available.
      Returns:
      true if a endpoint query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAncestorEndpointQuery

      EndpointQuery getAncestorEndpointQuery()
      Gets the query for a endpoint. Multiple retrievals produce a nested OR term.
      Returns:
      the endpoint query
      Throws:
      UnimplementedException - supportsAncestorEndpointQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsAncestorEndpointQuery()} is {@code true}.
    • matchAnyAncestorEndpoint

      void matchAnyAncestorEndpoint(boolean match)
      Matches endpoints with any ancestor.
      Parameters:
      match - true to match endpoints with any ancestor, false to match root endpoints
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorEndpointTerms

      void clearAncestorEndpointTerms()
      Clears the ancestor endpoint terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchDescendantEndpointId

      void matchDescendantEndpointId(Id endpointid, boolean match)
      Sets the endpoint Id for this query to match endpoints that have the specified endpoint as a descendant.
      Parameters:
      endpointid - a endpoint Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - endpointId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantEndpointIdTerms

      void clearDescendantEndpointIdTerms()
      Clears the descendant endpoint Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDescendantEndpointQuery

      boolean supportsDescendantEndpointQuery()
      Tests if a EndpointQuery is available.
      Returns:
      true if a endpoint query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDescendantEndpointQuery

      EndpointQuery getDescendantEndpointQuery()
      Gets the query for a endpoint. Multiple retrievals produce a nested OR term.
      Returns:
      the endpoint query
      Throws:
      UnimplementedException - supportsDescendantEndpointQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDescendantEndpointQuery()} is {@code true}.
    • matchAnyDescendantEndpoint

      void matchAnyDescendantEndpoint(boolean match)
      Matches endpoints with any descendant.
      Parameters:
      match - true to match endpoints with any descendant, false to match leaf endpoints
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantEndpointTerms

      void clearDescendantEndpointTerms()
      Clears the descendant endpoint terms.
      Compliance:
      mandatory - This method must be implemented.
    • getEndpointQueryRecord

      EndpointQueryRecord getEndpointQueryRecord(Type endpointRecordType) throws OperationFailedException
      Gets the endpoint query record corresponding to the given Endpoint record Type.Multiple retrievals produce a nested OR term.
      Parameters:
      endpointRecordType - a endpoint record type
      Returns:
      the endpoint query record
      Throws:
      NullArgumentException - endpointRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(endpointRecordType) is false
      Compliance:
      mandatory - This method must be implemented.