Interface AssetSpatialSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface AssetSpatialSession extends OsidSession

This session defines methods to access spatial mappings of an asset. The views correspond to those defined in the AssetLookupSession . The locations are defined in the Mapping OSID.

  • Method Details

    • getRepositoryId

      Id getRepositoryId()
      Gets the Repository Id associated with this session.
      Returns:
      the Repository Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getRepository

      Gets the Repository associated with this session.
      Returns:
      the Repository associated with this session
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canLookupSpatialCoverage

      boolean canLookupSpatialCoverage()
      Tests if this user can perform spatial lookups. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer lookup operations.
      Returns:
      false if spatial lookups are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeAssetView

      void useComparativeAssetView()
      The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.
      Compliance:
      mandatory - This method is must be implemented.
    • usePlenaryAssetView

      void usePlenaryAssetView()
      A complete view of the Asset returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.
      Compliance:
      mandatory - This method is must be implemented.
    • useFederatedRepositoryView

      void useFederatedRepositoryView()
      Federates the view for methods in this session. A federated view will include assets in repositories which are children of this repository in the repository hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedRepositoryView

      void useIsolatedRepositoryView()
      Isolates the view for methods in this session. An isolated view restricts lookups to this repository only.
      Compliance:
      mandatory - This method is must be implemented.
    • getAssetLocationIds

      Gets the locations related to the subject of this asset.
      Parameters:
      assetId - Id of the Asset to query
      Returns:
      a list of locations relevant to the subject of this asset
      Throws:
      NotFoundException - assetId is not found
      NullArgumentException - assetId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getAssetLocations

      Gets the locations related to the subject of this asset.
      Parameters:
      assetId - Id of the Asset to query
      Returns:
      a list of locations relevant to the subject of this asset
      Throws:
      NotFoundException - assetId is not found
      NullArgumentException - assetId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getAssetSpatialCoverage

      Gets the spacial coverage related to the subject of this asset. Each element of the returned list indicates a point in space with specified granularity and uncertainty, or a spatial area. If the list contains more than one element, each element indicates a relevant time or period for the subject of this asset.
      Parameters:
      assetId - Id of the Asset to query
      Returns:
      a list of locations relevant to the subject of this asset
      Throws:
      NotFoundException - assetId is not found
      NullArgumentException - assetId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getAssetIdsByLocation

      IdList getAssetIdsByLocation(Id locationId) throws OperationFailedException, PermissionDeniedException
      Gets a list of asset Ids included within the location.
      Parameters:
      locationId - a location Id
      Returns:
      a list of asset Ids
      Throws:
      NullArgumentException - locationId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getAssetsByLocation

      AssetList getAssetsByLocation(Id locationId) throws OperationFailedException, PermissionDeniedException
      Gets a list of assets included within the given spatial coverage.
      Parameters:
      locationId - a location Id
      Returns:
      a list of assets
      Throws:
      NullArgumentException - locationId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getAssetIdsBySpatialCoverage

      IdList getAssetIdsBySpatialCoverage(SpatialUnit spatialUnit) throws OperationFailedException, PermissionDeniedException
      Gets a list of asset Ids included within the given spatial coverage.
      Parameters:
      spatialUnit - a spatial unit
      Returns:
      a list of asset Ids
      Throws:
      NullArgumentException - spatialUnit is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getAssetsBySpatialCoverage

      AssetList getAssetsBySpatialCoverage(SpatialUnit spatialUnit) throws OperationFailedException, PermissionDeniedException
      Gets a list of assets included within the given spatial coverage.
      Parameters:
      spatialUnit - a spatial unit
      Returns:
      a list of assets
      Throws:
      NullArgumentException - spatialUnit is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.