OSID Logo
OSID Specifications
relationship rules package
Version 3.0.0
Release Candidate Preview
Interfaceosid.relationship.rules.RelationshipEnablerSmartFamilySession
Implementsosid.OsidSession
Description

This session manages queries and sequencing to create "smart" dynamic families. A RelationshipEnablerQuery can be retrieved from this session and mapped to this Family to create a virtual collection of relationship enablers. The relationship enablers may be sequenced using the RelationshipEnablerSearchOrder from this session.

This Family has a default query that matches any relationship enabler and a default search order that specifies no sequencing. The queries may be examined using a RelationshipEnablerQueryInspector. The query may be modified by converting the inspector back to a RelationshipEnablerQuery.

MethodgetFamilyId
Description

Gets the Family Id associated with this session.

Returnosid.id.Idthe Family Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetFamily
Description

Gets the Family associated with this session.

Returnosid.relationship.Familythe family
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanManageSmartFamilies
Description

Tests if this user can manage smart families. 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.

Returnboolean false if smart family management is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodgetRelationshipEnablerQuery
Description

Gets a relationship enabler query.

Returnosid.relationship.rules.RelationshipEnablerQuerythe relationship enabler query
CompliancemandatoryThis method must be implemented.
MethodgetRelationshipEnablerSearchOrder
Description

Gets a relationship enabler search order.

Returnosid.relationship.rules.RelationshipEnablerSearchOrderthe relationship enabler search order
CompliancemandatoryThis method must be implemented.
MethodapplyRelationshipEnablerQuery
Description

Applies a relationship enabler query to this family.

Parametersosid.relationship.rules.RelationshipEnablerQueryrelationshipEnablerQuerythe relationship enabler query
ErrorsNULL_ARGUMENT relationshipEnablerQuery is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure occurred
UNSUPPORTED relationshipEnablerQuery not of this service
CompliancemandatoryThis method must be implemented.
MethodinspectRelationshipEnablerQuery
Description

Gets a relationship enabler query inspector for this family.

Returnosid.relationship.rules.RelationshipEnablerQueryInspectorthe relationship enabler query inspector
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure occurred
CompliancemandatoryThis method must be implemented.
MethodapplyRelationshipEnablerSequencing
Description

Applies a relationship enabler search order to this family.

Parametersosid.relationship.rules.RelationshipEnablerSearchOrderrelationshipEnablerSearchOrderthe relationship enabler search order
ErrorsNULL_ARGUMENT relationshipEnablerSearchOrder is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure occurred
UNSUPPORTED relationshipEnablerSearchOrder not of this service
CompliancemandatoryThis method must be implemented.
MethodgetRelationshipEnablerQueryFromInspector
Description

Gets a relationship enabler query from an inspector.

Parametersosid.relationship.rules.RelationshipEnablerQueryInspectorrelationshipEnablerQueryInspectora relationship enabler query inspector
Returnosid.relationship.rules.RelationshipEnablerQuerythe relationship enabler query
ErrorsNULL_ARGUMENT relationshipEnablerQueryInspector is null
UNSUPPORTED relationshipEnablerQueryInspector is not of this service
CompliancemandatoryThis method must be implemented.