Interface ModelLookupSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods for retrieving models.
This lookup session defines several views:
- comparative view: elements may be silently omitted or re-ordered
- plenary view: provides a complete result set or is an error condition
- isolated warehouse view: All model methods in this session
operate, retrieve and pertain to models defined explicitly in the
current warehouse. Using an isolated view is useful for managing
Modelswith theModelAdminSession. - federated warehouse view: All model lookup methods in this session operate, retrieve and pertain to all models defined in this warehouse and any other models implicitly available in this warehouse through warehouse inheritence.
The methods useFederatedWarehouseView() and
useIsolatedWarehouseView() behave as a radio group and one should be
selected before invoking any lookup methods.
-
Method Summary
Modifier and TypeMethodDescriptionbooleanTests if this user can performModellookups.Gets theModelspecified by itsId.Gets allModels.getModelsByGenusType(Type modelGenusType) Gets aModelListcorresponding to the given model genusTypewhich does not include models of types derived from the specifiedType.getModelsByIds(IdList modelIds) Gets aModelListcorresponding to the givenIdList.getModelsByManufacturer(Id resourceId) Gets aModelListfor the given resourceId.getModelsByParentGenusType(Type modelGenusType) Gets aModelListcorresponding to the given model genusTypeand include any additional models with genus types derived from the specifiedType.getModelsByRecordType(Type modelRecordType) Gets aModelListcontaining the given model recordType.Gets theWarehouseassociated with this session.Gets theWarehouseIdassociated with 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 theModelreturns 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
-
getWarehouseId
Id getWarehouseId()Gets theWarehouseIdassociated with this session.- Returns:
- the
Warehouse Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getWarehouse
Gets theWarehouseassociated with this session.- Returns:
- the warehouse
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canLookupModels
boolean canLookupModels()Tests if this user can performModellookups. 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 not offer lookup operations to unauthorized users.- Returns:
falseif lookup methods are not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
useComparativeModelView
void useComparativeModelView()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.
-
usePlenaryModelView
void usePlenaryModelView()A complete view of theModelreturns 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.
-
useFederatedWarehouseView
void useFederatedWarehouseView()Federates the view for methods in this session. A federated view will include models in catalogs which are children of this catalog in the warehouse hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedWarehouseView
void useIsolatedWarehouseView()Isolates the view for methods in this session. An isolated view restricts retrievals to this warehouse only.- Compliance:
mandatory- This method is must be implemented.
-
getModel
Model getModel(Id modelId) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets theModelspecified by itsId. In plenary mode, the exactIdis found or aNOT_FOUNDresults. Otherwise, the returnedModelmay have a differentIdthan requested, such as the case where a duplicateIdwas assigned to aModeland retained for compatibility.- Parameters:
modelId- theIdof theModelto retrieve- Returns:
- the returned
Model - Throws:
NotFoundException- noModelfound with the givenIdNullArgumentException-modelIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getModelsByIds
ModelList getModelsByIds(IdList modelIds) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets aModelListcorresponding to the givenIdList. In plenary mode, the returned list contains all of the models 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, inaccessibleModelsmay be omitted from the list and may present the elements in any order including returning a unique set.- Parameters:
modelIds- the list ofIdsto retrieve- Returns:
- the returned
Modellist - Throws:
NotFoundException- anIdwas not foundNullArgumentException-modelIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getModelsByGenusType
ModelList getModelsByGenusType(Type modelGenusType) throws OperationFailedException, PermissionDeniedException Gets aModelListcorresponding to the given model genusTypewhich does not include models of types derived from the specifiedType. In plenary mode, the returned list contains all known models or an error results. Otherwise, the returned list may contain only those models that are accessible through this session.- Parameters:
modelGenusType- a model genus type- Returns:
- the returned
Modellist - Throws:
NullArgumentException-modelGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getModelsByParentGenusType
ModelList getModelsByParentGenusType(Type modelGenusType) throws OperationFailedException, PermissionDeniedException Gets aModelListcorresponding to the given model genusTypeand include any additional models with genus types derived from the specifiedType. In plenary mode, the returned list contains all known models or an error results. Otherwise, the returned list may contain only those models that are accessible through this session.- Parameters:
modelGenusType- a model genus type- Returns:
- the returned
Modellist - Throws:
NullArgumentException-modelGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getModelsByRecordType
ModelList getModelsByRecordType(Type modelRecordType) throws OperationFailedException, PermissionDeniedException Gets aModelListcontaining the given model recordType. In plenary mode, the returned list contains all known models or an error results. Otherwise, the returned list may contain only those models that are accessible through this session.- Parameters:
modelRecordType- a model record type- Returns:
- the returned
Modellist - Throws:
NullArgumentException-modelRecordTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getModelsByManufacturer
ModelList getModelsByManufacturer(Id resourceId) throws OperationFailedException, PermissionDeniedException Gets aModelListfor the given resourceId. In plenary mode, the returned list contains all known models or an error results. Otherwise, the returned list may contain only those models that are accessible through this session.- Parameters:
resourceId- a resourceId- Returns:
- the returned
Modellist - Throws:
NullArgumentException-resourceIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getModels
Gets allModels. In plenary mode, the returned list contains all known models or an error results. Otherwise, the returned list may contain only those models that are accessible through this session.- Returns:
- a list of
Models - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-