public interface RelationshipSmartFamilySession extends OsidSession
This session manages queries and sequencing to create "smart" dynamic
catalogs. A RelationshipQuery
can be retrieved from this
session and mapped to this Family
to create a virtual
collection of Relationships.
The entries may be sequenced
using the RelationshipSearchOrder
from this session.
This Family
has a default query that matches any
relationship and a default search order that specifies no sequencing. The
queries may be examined using a RelationshipQueryInspector.
The query may be modified by converting the inspector back to a
RelationshipQuery.
Modifier and Type | Method and Description |
---|---|
void |
applyRelationshipQuery(RelationshipQuery relationshipQuery)
Applies a relationship query to this family.
|
void |
applyRelationshipSequencing(RelationshipSearchOrder relationshipSearchOrder)
Applies a relationship search order to this family.
|
boolean |
canManageSmartFamilies()
Tests if this user can manage smart families.
|
Family |
getFamily()
Gets the
Family associated with this session. |
Id |
getFamilyId()
Gets the
Family Id associated with this
session. |
RelationshipQuery |
getRelationshipQuery()
Gets a relationship query.
|
RelationshipQuery |
getRelationshipQueryFromInspector(RelationshipQueryInspector relationshipQueryInspector)
Gets a relationship query from an inspector.
|
RelationshipSearchOrder |
getRelationshipSearchOrder()
Gets a relationship search order.
|
RelationshipQueryInspector |
inspectRelationshipQuery()
Gets a relationship query inspector for this family.
|
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
Id getFamilyId()
Family
Id
associated with this
session. Family Id
associated with this sessionmandatory
- This method must be implemented. Family getFamily() throws OperationFailedException, PermissionDeniedException
Family
associated with this session.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. boolean canManageSmartFamilies()
PERMISSION_DENIED.
This is intended as a hint to an
application that may opt not to offer smart operations. false
if smart family methods are not
authorized, true
otherwisemandatory
- This method must be implemented. RelationshipQuery getRelationshipQuery()
mandatory
- This method must be implemented. RelationshipSearchOrder getRelationshipSearchOrder()
mandatory
- This method must be implemented. void applyRelationshipQuery(RelationshipQuery relationshipQuery) throws OperationFailedException, PermissionDeniedException
relationshipQuery
- the relationship queryNullArgumentException
- relationshipQuery
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failure
occurredUnsupportedException
- relationshipQuery
not of this servicemandatory
- This method must be implemented. RelationshipQueryInspector inspectRelationshipQuery() throws OperationFailedException, PermissionDeniedException
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failure
occurredmandatory
- This method must be implemented. void applyRelationshipSequencing(RelationshipSearchOrder relationshipSearchOrder) throws OperationFailedException, PermissionDeniedException
relationshipSearchOrder
- the relationship search orderNullArgumentException
- relationshipSearchOrder
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failure
occurredUnsupportedException
- relationshipSearchOrder
not of this servicemandatory
- This method must be implemented. RelationshipQuery getRelationshipQueryFromInspector(RelationshipQueryInspector relationshipQueryInspector)
relationshipQueryInspector
- a relationship query inspectorNullArgumentException
-
relatinshipQueryInspector
is null
UnsupportedException
-
relationshipQueryInspector
is not of this servicemandatory
- This method must be implemented.