Interface CompositionSmartRepositorySession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session manages queries and sequencing to create "smart" dynamic
catalogs. A CompositionQuery can be retrieved from this session
and mapped to this Repository to create a virtual collection of
Compositions . The compositions may be sequenced using the
CompositionSearchOrder from this session.
This Repository has a default query that matches any
composition and a default search order that specifies no sequencing. The
queries may be examined using a CompositionQueryInspector . The
query may be modified by converting the inspector back to a
CompositionQuery .
-
Method Summary
Modifier and TypeMethodDescriptionvoidapplyCompositionQuery(CompositionQuery compositionQuery) Applies a composition query to this repository.voidapplyCompositionSequencing(CompositionSearchOrder compositionSearchOrder) Applies a composition search order to this repository.booleanTests if this user can manage smart repository.Gets a composition query.getCompositionQueryFromInspector(CompositionQueryInspector compositionQueryInspector) Gets a composition query from an inspector.Gets a composition search order.Gets theRepositoryassociated with this session.Gets theRepositoryIdassociated with this session.Gets a composition query inspector for this repository.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
getRepositoryId
Id getRepositoryId()Gets theRepositoryIdassociated with this session.- Returns:
- the
Repository Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getRepository
Gets theRepositoryassociated with this session.- Returns:
- the
Repositoryassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- 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 aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer operations to unauthorized users.- Returns:
falseif smart repository management is not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
getCompositionQuery
CompositionQuery getCompositionQuery()Gets a composition query.- Returns:
- the composition query
- Compliance:
mandatory- This method must be implemented.
-
getCompositionSearchOrder
CompositionSearchOrder getCompositionSearchOrder()Gets a composition search order.- Returns:
- the composition search order
- Compliance:
mandatory- This method must be implemented.
-
applyCompositionQuery
void applyCompositionQuery(CompositionQuery compositionQuery) throws OperationFailedException, PermissionDeniedException Applies a composition query to this repository.- Parameters:
compositionQuery- the composition query- Throws:
NullArgumentException-compositionQueryisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure occurredUnsupportedException-compositionQuerynot of this service- Compliance:
mandatory- This method must be implemented.
-
inspectCompositionQuery
CompositionQueryInspector inspectCompositionQuery() throws OperationFailedException, PermissionDeniedExceptionGets a composition query inspector for this repository.- Returns:
- the composition query inspector
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure occurred- Compliance:
mandatory- This method must be implemented.
-
applyCompositionSequencing
void applyCompositionSequencing(CompositionSearchOrder compositionSearchOrder) throws OperationFailedException, PermissionDeniedException Applies a composition search order to this repository.- Parameters:
compositionSearchOrder- the composition search order- Throws:
NullArgumentException-compositionSearchOrderisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure occurredUnsupportedException-compositionSearchOrdernot of this service- Compliance:
mandatory- This method must be implemented.
-
getCompositionQueryFromInspector
CompositionQuery getCompositionQueryFromInspector(CompositionQueryInspector compositionQueryInspector) Gets a composition query from an inspector.- Parameters:
compositionQueryInspector- a resorce relationship query inspector- Returns:
- the composition query
- Throws:
NullArgumentException-compositionQueryInspectorisnullUnsupportedException-compositionQueryInspectoris not of this service- Compliance:
mandatory- This method must be implemented.
-