Interface EntryLookupSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
EntryLookupSession is used to look up dictionary entries. This
session includes the methods defined in the EntryRetrievalSession
.
This session defines two 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
- federated view: entries are accessible from the dictionary associated with this session and any descedant dictionaries in the dictionary hierarchy
- isolated view: entries are accessible from this dictionary only
Generally, the comparative view should be used for most applications as it permits operation even if there is data out of sync or there is an authorization block in a particular element.
-
Method Summary
Modifier and TypeMethodDescriptionbooleanTests if this user can performEntrylookups.Gets theDictionaryassociated with this session.Gets theDictionaryIdassociated with this session.Gets allEntryelements.getEntriesByGenusType(Type entryGenusType) Gets anEntryListcorresponding to the given entry genusTypewhich does not include entries of genus types derived from the specifiedType.getEntriesByIds(IdList entryIds) Gets anEntryListcorresponding to the givenIdList.getEntriesByKeyAndKeyType(Object key, Type keyType) Gets all theDictionaryentries matching the given key and keyType.getEntriesByKeyType(Type keyType) Gets all theDictionaryentries matching the given keyType.getEntriesByKeyTypeAndValueType(Type keyType, Type valueType) Gets all theDictionaryentries matching the given key and valueType.getEntriesByParentGenusType(Type entryGenusType) Gets anEntryListcorresponding to the given entry genusTypeand include any additional entries with genus types derived from the specifiedType.getEntriesByRecordType(Type entryyRecordType) Gets anEntryListcontaining the given entry recordType.Gets theEntryspecified by itsId.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 theEntryreturns 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
-
getDictionaryId
Id getDictionaryId()Gets theDictionaryIdassociated with this session.- Returns:
- the
DictionaryIdassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getDictionary
Gets theDictionaryassociated with this session.- Returns:
- the
Dictionaryassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canLookupEntries
boolean canLookupEntries()Tests if this user can performEntrylookups. 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.
-
useComparativeEntryView
void useComparativeEntryView()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.
-
usePlenaryEntryView
void usePlenaryEntryView()A complete view of theEntryreturns 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.
-
useFederatedDictionaryView
void useFederatedDictionaryView()Federates the view for methods in this session. A federated view will include entries from descendant dictionaries in the dictionary hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedDictionaryView
void useIsolatedDictionaryView()Isolates the view for methods in this session. An isolated view restricts lookups to this dictionary only.- Compliance:
mandatory- This method is must be implemented.
-
getEntry
Entry getEntry(Id entryId) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets theEntryspecified by itsId. The identifier represents the union of the key, keyType and valueType.In plenary mode, the exactIdis found or aNOT_FOUNDresults. Otherwise, the returnedEntrymay have a differentIdthan requested, such as the case where a duplicateIdwas assigned to anAgencyand retained for compatibility.- Parameters:
entryId-Idof theEntry- Returns:
- the entry
- Throws:
NotFoundException-entryIdnot foundNullArgumentException-entryIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method is must be implemented.
-
getEntriesByIds
EntryList getEntriesByIds(IdList entryIds) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets anEntryListcorresponding to the givenIdList. In plenary mode, the returned list contains all of the entries 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, inaccessibleEntryelements may be omitted from the list and may present the elements in any order including returning a unique set.- Parameters:
entryIds- a list ofEntry Ids- Returns:
- the entry list
- Throws:
NotFoundException-entryIdnot foundNullArgumentException-entryIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method is must be implemented.
-
getEntriesByGenusType
EntryList getEntriesByGenusType(Type entryGenusType) throws OperationFailedException, PermissionDeniedException Gets anEntryListcorresponding to the given entry genusTypewhich does not include entries of genus types derived from the specifiedType. In plenary mode, the returned list contains all known entries or an error results. Otherwise, the returned list may contain only those entries that are accessible through this session.- Parameters:
entryGenusType- an entry genus type- Returns:
- the returned
Entry list - Throws:
NullArgumentException-entryGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getEntriesByParentGenusType
EntryList getEntriesByParentGenusType(Type entryGenusType) throws OperationFailedException, PermissionDeniedException Gets anEntryListcorresponding to the given entry genusTypeand include any additional entries with genus types derived from the specifiedType. In plenary mode, the returned list contains all known entries or an error results. Otherwise, the returned list may contain only those entries that are accessible through this session.- Parameters:
entryGenusType- an entry genus type- Returns:
- the returned
Entry list - Throws:
NullArgumentException-entryGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getEntriesByRecordType
EntryList getEntriesByRecordType(Type entryyRecordType) throws OperationFailedException, PermissionDeniedException Gets anEntryListcontaining the given entry recordType. In plenary mode, the returned list contains all known entries or an error results. Otherwise, the returned list may contain only those entries that are accessible through this session.- Parameters:
entryyRecordType- an entry record type- Returns:
- the returned
Entrylist - Throws:
NullArgumentException-entryRecordTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getEntriesByKeyType
EntryList getEntriesByKeyType(Type keyType) throws OperationFailedException, PermissionDeniedException Gets all theDictionaryentries matching the given keyType. In plenary mode, the returned list contains all of the entries specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Entry elements may be omitted from the list and may present the elements in any order including returning a unique set.- Parameters:
keyType- the type of the key to match- Returns:
- the list of entries matching
keyType - Throws:
NullArgumentException-keyTypeis nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getEntriesByKeyTypeAndValueType
EntryList getEntriesByKeyTypeAndValueType(Type keyType, Type valueType) throws OperationFailedException, PermissionDeniedException Gets all theDictionaryentries matching the given key and valueType. In plenary mode, the returned list contains all of the entries specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Entry elements may be omitted from the list and may present the elements in any order including returning a unique set.- Parameters:
keyType- the type of the key to matchvalueType- the type of the value to match- Returns:
- the list of entries matching
keyType - Throws:
NullArgumentException-keyTypeorvalueTypeis nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getEntriesByKeyAndKeyType
EntryList getEntriesByKeyAndKeyType(Object key, Type keyType) throws OperationFailedException, PermissionDeniedException Gets all theDictionaryentries matching the given key and keyType. In plenary mode, the returned list contains all of the entries specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Entry elements may be omitted from the list and may present the elements in any order including returning a unique set.- Parameters:
key- the key to matchkeyType- the type of the value to match- Returns:
- the list of entries matching
keyType - Throws:
NullArgumentException-keyorkeyTypeis nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getEntries
Gets allEntryelements. In plenary mode, the returned list contains all known entries or an error results. Otherwise, the returned list may contain only those dictionaries that are accessible through this session.- Returns:
- the list of entries
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-