OSID Logo
OSID Specifications
relationship rules package
Version 3.1.0
Interfaceosid.relationship.rules.RelationshipEnablerSmartFamilySession
Implementsosid.OsidSession
Used Byosid.relationship.rules.RelationshipRulesManager
osid.relationship.rules.RelationshipRulesProxyManager
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.Id the Family Id associated with this session
Compliancemandatory This method must be implemented.
MethodgetFamily
Description

Gets the Family associated with this session.

Returnosid.relationship.Family the family
ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This 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
Compliancemandatory This method must be implemented.
MethodgetRelationshipEnablerQuery
Description

Gets a relationship enabler query.

Returnosid.relationship.rules.RelationshipEnablerQuery the relationship enabler query
Compliancemandatory This method must be implemented.
MethodgetRelationshipEnablerSearchOrder
Description

Gets a relationship enabler search order.

Returnosid.relationship.rules.RelationshipEnablerSearchOrder the relationship enabler search order
Compliancemandatory This method must be implemented.
MethodapplyRelationshipEnablerQuery
Description

Applies a relationship enabler query to this family.

Parametersosid.relationship.rules.RelationshipEnablerQueryrelationshipEnablerQuery the relationship enabler query
ErrorsNULL_ARGUMENT relationshipEnablerQuery is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure occurred
UNSUPPORTED relationshipEnablerQuery not of this service
Compliancemandatory This method must be implemented.
MethodinspectRelationshipEnablerQuery
Description

Gets a relationship enabler query inspector for this family.

Returnosid.relationship.rules.RelationshipEnablerQueryInspector the relationship enabler query inspector
ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure occurred
Compliancemandatory This method must be implemented.
MethodapplyRelationshipEnablerSequencing
Description

Applies a relationship enabler search order to this family.

Parametersosid.relationship.rules.RelationshipEnablerSearchOrderrelationshipEnablerSearchOrder the relationship enabler search order
ErrorsNULL_ARGUMENT relationshipEnablerSearchOrder is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure occurred
UNSUPPORTED relationshipEnablerSearchOrder not of this service
Compliancemandatory This method must be implemented.
MethodgetRelationshipEnablerQueryFromInspector
Description

Gets a relationship enabler query from an inspector.

Parametersosid.relationship.rules.RelationshipEnablerQueryInspectorrelationshipEnablerQueryInspector a relationship enabler query inspector
Returnosid.relationship.rules.RelationshipEnablerQuery the relationship enabler query
ErrorsNULL_ARGUMENT relationshipEnablerQueryInspector is null
UNSUPPORTED relationshipEnablerQueryInspector is not of this service
Compliancemandatory This method must be implemented.