Interface PathQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidExtensibleQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidQuery, Suppliable

public interface PathQuery extends OsidObjectQuery

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

  • Method Details

    • matchCoordinate

      void matchCoordinate(Coordinate coordinate, boolean match)
      Matches paths overlapping with the specified Coordinate .
      Parameters:
      coordinate - a coordinate
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - coordinate is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCoordinateTerms

      void clearCoordinateTerms()
      Clears the coordinate query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchOverlappingSpatialUnit

      void matchOverlappingSpatialUnit(SpatialUnit spatialUnit, boolean match)
      Matches paths overlapping with the specified SpatialUnit .
      Parameters:
      spatialUnit - a spatial unit
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - spatialUnit is null
      Compliance:
      mandatory - This method must be implemented.
    • matchAnyOverlappingSpatialUnit

      void matchAnyOverlappingSpatialUnit(boolean match)
      Matches paths that have any overlapping spatial unit.
      Parameters:
      match - true to match paths with any spatial dimension, false to match paths with no spatial dimensions
      Compliance:
      mandatory - This method must be implemented.
    • clearOverlappingSpatialUnitTerms

      void clearOverlappingSpatialUnitTerms()
      Clears the spatial unit query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAlongLocationIds

      void matchAlongLocationIds(Id[] locationIds, boolean match)
      Sets the location Ids for this query to match paths including all the given locations.
      Parameters:
      locationIds - the location Ids
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - locationIds is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAlongLocationIdsTerms

      void clearAlongLocationIdsTerms()
      Clears the along location Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchIntersectingPathId

      void matchIntersectingPathId(Id pathId, boolean match)
      Sets the path Id for this query to match paths intersecting with another path,
      Parameters:
      pathId - the path Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - pathId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearIntersectingPathIdTerms

      void clearIntersectingPathIdTerms()
      Clears the intersecting path Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsIntersectingPathQuery

      boolean supportsIntersectingPathQuery()
      Tests if a PathQuery is available for intersecting paths,
      Returns:
      true if a path query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getIntersectingPathQuery

      PathQuery getIntersectingPathQuery()
      Gets the query for an intersecting path, Multiple retrievals produce a nested OR term.
      Returns:
      the path query
      Throws:
      UnimplementedException - supportsIntersectingPathQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsIntersectingPathQuery()} is {@code true} .
    • matchAnyIntersectingPath

      void matchAnyIntersectingPath(boolean match)
      Matches paths with any intersecting path,
      Parameters:
      match - true to match paths with any intersecting path, false to match paths with no intersecting path
      Compliance:
      mandatory - This method must be implemented.
    • clearIntersectingPathTerms

      void clearIntersectingPathTerms()
      Clears the intersecting path query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchLocationId

      void matchLocationId(Id locationId, boolean match)
      Sets the location Id for this query to match paths that pass through locations.
      Parameters:
      locationId - the location Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - locationId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearLocationIdTerms

      void clearLocationIdTerms()
      Clears the location Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsLocationQuery

      boolean supportsLocationQuery()
      Tests if a LocationQuery is available.
      Returns:
      true if a location query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getLocationQuery

      LocationQuery getLocationQuery()
      Gets the query for a location. Multiple retrievals produce a nested OR term.
      Returns:
      the location query
      Throws:
      UnimplementedException - supportsLocationQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsLocationQuery()} is {@code true} .
    • matchAnyLocation

      void matchAnyLocation(boolean match)
      Matches routes that go through any location.
      Parameters:
      match - true to match routes with any location, false to match routes with no location
      Compliance:
      mandatory - This method must be implemented.
    • clearLocationTerms

      void clearLocationTerms()
      Clears the location query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchRouteId

      void matchRouteId(Id routeId, boolean match)
      Sets the route Id for this query to match paths used in a route.
      Parameters:
      routeId - a route Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - routeId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearRouteIdTerms

      void clearRouteIdTerms()
      Clears the route Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsRouteQuery

      boolean supportsRouteQuery()
      Tests if a RouteQuery is available.
      Returns:
      true if a route query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getRouteQuery

      RouteQuery getRouteQuery()
      Gets the query for a route. Multiple retrievals produce a nested OR term.
      Returns:
      the route query
      Throws:
      UnimplementedException - supportsRouteQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsRouteQuery()} is {@code true} .
    • matchAnyRoute

      void matchAnyRoute(boolean match)
      Matches paths that are used in any route.
      Parameters:
      match - true to match paths in any route, false to match paths used in no route
      Compliance:
      mandatory - This method must be implemented.
    • clearRouteTerms

      void clearRouteTerms()
      Clears the route query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchMapId

      void matchMapId(Id mapId, boolean match)
      Sets the map Id for this query to match paths assigned to maps.
      Parameters:
      mapId - the map Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - mapId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearMapIdTerms

      void clearMapIdTerms()
      Clears the map Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsMapQuery

      boolean supportsMapQuery()
      Tests if a MapQuery is available.
      Returns:
      true if a map query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getMapQuery

      MapQuery getMapQuery()
      Gets the query for a map. Multiple retrievals produce a nested OR term.
      Returns:
      the map query
      Throws:
      UnimplementedException - supportsMapQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsMapQuery()} is {@code true} .
    • clearMapTerms

      void clearMapTerms()
      Clears the map query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getPathQueryRecord

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