Interface RuleLookupSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session provides methods for retrieving Rules .
This session defines views that offer differing behaviors when retrieving multiple objects.
- comparative view: elements may be silently omitted or re-ordered
- plenary view: provides a complete set or is an error condition
- isolated engine view: All rule methods in this session operate, retrieve and pertain to rules defined explicitly in the current engine.
- federated engine view: All rule methods in this session operate, retrieve and pertain to all rules defined in this engine and any other rules implicitly available in this engine through engine inheritence.
- active rule view: All rule lookup methods return active rules.
- any status rule view: Rules of any active or inactive status are returned from methods.
Generally, the comparative view should be used for most applications
as it permits operation even if there is data that cannot be accessed. For
example, a browsing application may only need to examine the Rules
it can access, without breaking execution. However, an assessment may only
be useful if all Rules referenced by it are available, and a
test-taking applicationmay sacrifice some interoperability for the sake of
precision.
-
Method Summary
Modifier and TypeMethodDescriptionbooleanTests if this user can performRulelookups.Gets theEngineassociated with this session.Gets theEngineIdassociated with this session.Gets theRulespecified by itsId.getRules()Gets allRules.getRulesByGenusType(Type ruleGenusType) Gets aRuleListcorresponding to the given rule genusTypewhich does not include rules of genus types derived from the specifiedType.getRulesByIds(IdList ruleIds) Gets aRuleListcorresponding to the givenIdList.getRulesByParentGenusType(Type ruleGenusType) Gets aRuleListcorresponding to the given rule genusTypeand include any additional rules with genus types derived from the specifiedType.getRulesByRecordType(Type ruleRecordType) Gets aRuleListcontaining the given repository recordType.voidOnly active rules are returned by methods in this session.voidAll active and inactive rules are returned by methods in this session.voidThe returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error.voidFederates the view for methods in this session.voidIsolates the view for methods in this session.voidA complete view of theRulereturns is desired.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
-
getEngineId
Id getEngineId()Gets theEngineIdassociated with this session.- Returns:
- the
Engine Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getEngine
Gets theEngineassociated with this session.- Returns:
- the engine
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canLookupRules
boolean canLookupRules()Tests if this user can performRulelookups. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.- Returns:
falseif lookup methods are not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
useComparativeRuleView
void useComparativeRuleView()The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.- Compliance:
mandatory- This method is must be implemented.
-
usePlenaryRuleView
void usePlenaryRuleView()A complete view of theRulereturns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.- Compliance:
mandatory- This method is must be implemented.
-
useFederatedEngineView
void useFederatedEngineView()Federates the view for methods in this session. A federated view will include rules in engines which are children of this engine in the engine hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedEngineView
void useIsolatedEngineView()Isolates the view for methods in this session. An isolated view restricts retrievals to this engine only.- Compliance:
mandatory- This method is must be implemented.
-
useActiveRuleView
void useActiveRuleView()Only active rules are returned by methods in this session.- Compliance:
mandatory- This method is must be implemented.
-
useAnyStatusRuleView
void useAnyStatusRuleView()All active and inactive rules are returned by methods in this session.- Compliance:
mandatory- This method is must be implemented.
-
getRule
Rule getRule(Id ruleId) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets theRulespecified by itsId. In plenary mode, the exactIdis found or aNOT_FOUNDresults. Otherwise, the returnedRulemay have a differentIdthan requested, such as the case where a duplicateIdwas assigned to aRuleand retained for compatibility. In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.- Parameters:
ruleId-Idof theRule- Returns:
- the rule
- Throws:
NotFoundException-ruleIdnot foundNullArgumentException-ruleIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method is must be implemented.
-
getRulesByIds
RuleList getRulesByIds(IdList ruleIds) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets aRuleListcorresponding to the givenIdList. In plenary mode, the returned list contains all of the rules specified in theIdlist, in the order of the list, including duplicates, or an error results if anIdin the supplied list is not found or inaccessible. Otherwise, inaccessibleRulesmay be omitted from the list and may present the elements in any order including returning a unique set. In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.- Parameters:
ruleIds- the list ofIdsto retrieve- Returns:
- the returned
Rulelist - Throws:
NotFoundException- anIdwas not foundNullArgumentException-ruleIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getRulesByGenusType
RuleList getRulesByGenusType(Type ruleGenusType) throws OperationFailedException, PermissionDeniedException Gets aRuleListcorresponding to the given rule genusTypewhich does not include rules of genus types derived from the specifiedType. In plenary mode, the returned list contains all known rules or an error results. Otherwise, the returned list may contain only those rules that are accessible through this session. In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.- Parameters:
ruleGenusType- a rule genus type- Returns:
- the returned
Rulelist - Throws:
NullArgumentException-ruleGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getRulesByParentGenusType
RuleList getRulesByParentGenusType(Type ruleGenusType) throws OperationFailedException, PermissionDeniedException Gets aRuleListcorresponding to the given rule genusTypeand include any additional rules with genus types derived from the specifiedType. In plenary mode, the returned list contains all known rules or an error results. Otherwise, the returned list may contain only those rules that are accessible through this session. In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.- Parameters:
ruleGenusType- a rule genus type- Returns:
- the returned
Rulelist - Throws:
NullArgumentException-ruleGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getRulesByRecordType
RuleList getRulesByRecordType(Type ruleRecordType) throws OperationFailedException, PermissionDeniedException Gets aRuleListcontaining the given repository recordType. In plenary mode, the returned list contains all known rules or an error results. Otherwise, the returned list may contain only those rules that are accessible through this session. In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.- Parameters:
ruleRecordType- a rule record type- Returns:
- the returned
Rulelist - Throws:
NullArgumentException-ruleRecordTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getRules
Gets allRules. In plenary mode, the returned list contains all known rules or an error results. Otherwise, the returned list may contain only those rules that are accessible through this session. In active mode, rules are returned that are currently active. In any status mode, active and inactive rules are returned.- Returns:
- a list of
Rules - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-