Interface AssetSmartRepositorySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface AssetSmartRepositorySession extends OsidSession

This session manages queries and sequencing to create "smart" dynamic catalogs. An AssetQuery can be retrieved from this session and mapped to this Repository to create a virtual collection of Assets . The assets may be sequenced using the AssetSearchOrder from this session.

This Repository has a default query that matches any asset and a default search order that specifies no sequencing. The queries may be examined using an AssetQueryInspector . The query may be modified by converting the inspector back to an AssetQuery .

  • 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.
    • canManageSmartRepository

      boolean canManageSmartRepository()
      Tests if this user can manage smart repository. A return of true does not guarantee successful authorization. A return of false indicates that it is known 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 operations to unauthorized users.
      Returns:
      false if smart repository management is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAssetQuery

      AssetQuery getAssetQuery()
      Gets an asset query.
      Returns:
      the asset query
      Compliance:
      mandatory - This method must be implemented.
    • getAssetSearchOrder

      AssetSearchOrder getAssetSearchOrder()
      Gets an asset search order.
      Returns:
      the asset search order
      Compliance:
      mandatory - This method must be implemented.
    • applyAssetQuery

      void applyAssetQuery(AssetQuery assetQuery) throws OperationFailedException, PermissionDeniedException
      Applies an asset query to this repository.
      Parameters:
      assetQuery - the asset query
      Throws:
      NullArgumentException - assetQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - assetQuery not of this service
      Compliance:
      mandatory - This method must be implemented.
    • inspectAssetQuery

      Gets an asset query inspector for this repository.
      Returns:
      the asset query inspector
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.
    • applyAssetSequencing

      void applyAssetSequencing(AssetSearchOrder assetSearchOrder) throws OperationFailedException, PermissionDeniedException
      Applies an asset search order to this repository.
      Parameters:
      assetSearchOrder - the asset search order
      Throws:
      NullArgumentException - assetSearchOrder is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - assetSearchOrder not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getAssetQueryFromInspector

      AssetQuery getAssetQueryFromInspector(AssetQueryInspector assetQueryInspector)
      Gets an asset query from an inspector.
      Parameters:
      assetQueryInspector - a resorce relationship query inspector
      Returns:
      the asset query
      Throws:
      NullArgumentException - assetQueryInspector is null
      UnsupportedException - assetQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.