Interface ProfileItemLookupSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session provides methods for retrieving ProfileItems .
This session defines two sets of views which offer differing behaviors when retrieving multiple objects.
- comparative view: elements may be silently omitted or re-ordered
- plenary view: provides a complete and ordered result set or is an error condition
- isolated profile view: All profile item methods in this session
operate, retrieve and pertain to profile items defined explicitly in
the current profile. Using an isolated view is useful for managing
profile items with the
ProfileItemAdminSession. - federated profile view: All profile item methods in this session operate, retrieve and pertain to all profile items defined in this profile and any other profiles implicitly available in this profile through profile inheritence.
Generally, the comparative view should be used for most applications as it permits operation even if there a particular element is inaccessible. For example, a hierarchy output can be plugged into a lookup method to retrieve all objects known to a hierarchy, but it may not be necessary to break execution if a node from the hierarchy no longer exists. However, some administrative applications may need to know whether it had retrieved an entire set of objects and may sacrifice some interoperability for the sake of precision.
ProfileItems may have an additional records indicated by their respective record types.
-
Method Summary
Modifier and TypeMethodDescriptionbooleanTests if this user can performProfileItemlookups.Gets theProfileassociated with this session.Gets theProfileIdassociated with this session.getProfileItem(Id profileItemId) Gets theProfileItemspecified by itsId.Gets allProfileItems.getProfileItemsByGenusType(Type profileItemGenusType) Gets aProfileItemListcorresponding to the given profile item genusTypewhich does not include profile items of genus types derived from the specifiedType.getProfileItemsByIds(IdList profileItemIds) Gets aProfileItemListcorresponding to the givenIdList.In plenary mode, the returned list contains all of the profile items 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.getProfileItemsByParentGenusType(Type profileItemGenusType) Gets aProfileItemListcorresponding to the given profile item genusTypeand include any additional profile item with genus types derived from the specifiedType.getProfileItemsByRecordType(Type profileItemRecordType) Gets aProfileItemListcontaining the given profile item recordType.In plenary mode, the returned list contains all known profile items or an error results.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 theProfileItemreturns 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
-
getProfileId
Id getProfileId()Gets theProfileIdassociated with this session.- Returns:
- the
Profile Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getProfile
Gets theProfileassociated with this session.- Returns:
- the
Profileassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canLookupProfileItems
boolean canLookupProfileItems()Tests if this user can performProfileItemlookups. 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.- Returns:
falseif lookup methods are not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
useComparativeProfileItemView
void useComparativeProfileItemView()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.
-
usePlenaryProfileItemView
void usePlenaryProfileItemView()A complete view of theProfileItemreturns 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.
-
useFederatedProfileView
void useFederatedProfileView()Federates the view for methods in this session. A federated view will include items in profiles which are children of this profile in the profile hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedProfileView
void useIsolatedProfileView()Isolates the view for methods in this session. An isolated view restricts lookups to this profile only.- Compliance:
mandatory- This method is must be implemented.
-
getProfileItem
ProfileItem getProfileItem(Id profileItemId) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets theProfileItemspecified by itsId. In plenary mode, the exactIdis found or aNOT_FOUNDresults. Otherwise, the returnedProfileItemmay have a differentIdthan requested, such as the case where a duplicateIdwas assigned to aProfileItemand retained for compatibility.- Parameters:
profileItemId- theIdof theProfileItemto retrieve- Returns:
- the returned
ProfileItem - Throws:
NotFoundException- noProfileItemfound with the givenIdNullArgumentException-profileItemIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProfileItemsByIds
ProfileItemList getProfileItemsByIds(IdList profileItemIds) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets aProfileItemListcorresponding to the givenIdList.In plenary mode, the returned list contains all of the profile items 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, inaccessibleProfileItemsmay be omitted from the list and may present the elements in any order including returning a unique set.- Parameters:
profileItemIds- the list ofIdsto retrieve- Returns:
- the returned
ProfileItemlist - Throws:
NotFoundException- anId wasnot foundNullArgumentException-profileItemIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProfileItemsByGenusType
ProfileItemList getProfileItemsByGenusType(Type profileItemGenusType) throws OperationFailedException, PermissionDeniedException Gets aProfileItemListcorresponding to the given profile item genusTypewhich does not include profile items of genus types derived from the specifiedType. In plenary mode, the returned list contains all known profile items or an error results. Otherwise, the returned list may contain only those profile items that are accessible through this session.- Parameters:
profileItemGenusType- a profile item genus type- Returns:
- the returned
ProfileItemlist - Throws:
NullArgumentException-profileItemGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProfileItemsByParentGenusType
ProfileItemList getProfileItemsByParentGenusType(Type profileItemGenusType) throws OperationFailedException, PermissionDeniedException Gets aProfileItemListcorresponding to the given profile item genusTypeand include any additional profile item with genus types derived from the specifiedType. In plenary mode, the returned list contains all known profile items or an error results. Otherwise, the returned list may contain only those profile items that are accessible through this session.- Parameters:
profileItemGenusType- a profile item genus type- Returns:
- the returned
ProfileItemlist - Throws:
NullArgumentException-profileItemGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProfileItemsByRecordType
ProfileItemList getProfileItemsByRecordType(Type profileItemRecordType) throws OperationFailedException, PermissionDeniedException Gets aProfileItemListcontaining the given profile item recordType.In plenary mode, the returned list contains all known profile items or an error results. Otherwise, the returned list may contain only those profile items that are accessible through this session.- Parameters:
profileItemRecordType- a profile item record type- Returns:
- the returned
ProfileItemlist - Throws:
NullArgumentException-profileItemRecordTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProfileItems
Gets allProfileItems. In plenary mode, the returned list contains all known profile items or an error results. Otherwise, the returned list may contain only those profile items that are accessible through this session.- Returns:
- a list of
ProfileItems - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-