Interface ResourceRelationshipSmartBinSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session manages queries and sequencing to create "smart" dynamic
catalogs. A ResourceRelationshipQuery can be retrieved from this
session and mapped to this Bin to create a virtual collection of
ResourceRelationships . The resource relationships may be
sequenced using the ResourceRelationshipSearchOrder from this
session.
This Bin has a default query that matches any resource and a
default search order that specifies no sequencing. The queries may be
examined using a ResourceRelationshipQueryInspector . The query
may be modified by converting the inspector back to a
ResourceRelationshipQuery .
-
Method Summary
Modifier and TypeMethodDescriptionvoidapplyResourceRelationshipQuery(ResourceRelationshipQuery resourceQuery) Applies a resource relationship query to this bin.voidapplyResourceRelationshipSequencing(ResourceRelationshipSearchOrder resourceRelationshipSearchOrder) Applies a resource relationship search order to this bin.booleanTests if this user can manage smart bins.getBin()Gets theBinassociated with this session.getBinId()Gets theBinIdassociated with this session.Gets a resource relationship query.getResourceRelationshipQueryFromInspector(ResourceRelationshipQueryInspector resourceRelationshipQueryInspector) Gets a resource relationship query from an inspector.Gets a resource relationship search order.Gets a resource relationship query inspector for this bin.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
-
getBinId
Id getBinId()Gets theBinIdassociated with this session.- Returns:
- the
Bin Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getBin
Gets theBinassociated with this session.- Returns:
- the
Binassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canManageSmartBins
boolean canManageSmartBins()Tests if this user can manage smart bins. 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 bin management is not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
getResourceRelationshipQuery
ResourceRelationshipQuery getResourceRelationshipQuery()Gets a resource relationship query.- Returns:
- the resource relationship query
- Compliance:
mandatory- This method must be implemented.
-
getResourceRelationshipSearchOrder
ResourceRelationshipSearchOrder getResourceRelationshipSearchOrder()Gets a resource relationship search order.- Returns:
- the resource relationship search order
- Compliance:
mandatory- This method must be implemented.
-
applyResourceRelationshipQuery
void applyResourceRelationshipQuery(ResourceRelationshipQuery resourceQuery) throws OperationFailedException, PermissionDeniedException Applies a resource relationship query to this bin.- Parameters:
resourceQuery- the resource relationship query- Throws:
NullArgumentException-resourceRelationshipQueryisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure occurredUnsupportedException-resourceRelationshipQuerynot of this service- Compliance:
mandatory- This method must be implemented.
-
inspectResourceRelationshipQuery
ResourceRelationshipQueryInspector inspectResourceRelationshipQuery() throws OperationFailedException, PermissionDeniedExceptionGets a resource relationship query inspector for this bin.- Returns:
- the resource relationship query inspector
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure occurred- Compliance:
mandatory- This method must be implemented.
-
applyResourceRelationshipSequencing
void applyResourceRelationshipSequencing(ResourceRelationshipSearchOrder resourceRelationshipSearchOrder) throws OperationFailedException, PermissionDeniedException Applies a resource relationship search order to this bin.- Parameters:
resourceRelationshipSearchOrder- the resource relationship search order- Throws:
NullArgumentException-resourceRelationshipSearchOrderisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure occurredUnsupportedException-resourceRelationshipSearchOrdernot of this service- Compliance:
mandatory- This method must be implemented.
-
getResourceRelationshipQueryFromInspector
ResourceQuery getResourceRelationshipQueryFromInspector(ResourceRelationshipQueryInspector resourceRelationshipQueryInspector) Gets a resource relationship query from an inspector.- Parameters:
resourceRelationshipQueryInspector- a resource relationship query inspector- Returns:
- the resource relationship query
- Throws:
NullArgumentException-resourceRelationshipQueryInspectorisnullUnsupportedException-resourceRelationshipQueryInspectoris not of this service- Compliance:
mandatory- This method must be implemented.
-