Interface ProvisionableLookupSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods for retrieving provisionables.
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 distributor view: All provisionable methods in this
session operate, retrieve and pertain to provisionables defined
explicitly in the current distributor. Using an isolated view is
useful for managing
Provisionableswith theProvisionableAdminSession. - federated distributor view: All provisionable lookup methods in this session operate, retrieve and pertain to all provisionables defined in this distributor and any other provisionables implicitly available in this distributor through distributor inheritence.
- effective provisionable view: All provisionable lookup methods return provisionables where the current date falls in between the effective dates inclusive.
- any effective provisionable view: provisionables of any effective date are returned from methods.
The methods useFederatedDistributorView() and
useIsolatedDistributorView() behave as a radio group and one should be
selected before invoking any lookup methods.
Provisionables may have an additional records indicated by their respective record types. The record may not be accessed through a cast of the provisionables.
-
Method Summary
Modifier and TypeMethodDescriptionbooleanTests if this user can performProvisionablelookups.Gets theDistributorassociated with this session.Gets theDistributorIdassociated with this session.getProvisionable(Id provisionableId) Gets theProvisionablespecified by itsId.Gets all provisionables.getProvisionablesByGenusType(Type provisionableGenusType) Gets aProvisionableListcorresponding to the given provisionable genusTypewhich does not include provisionables of types derived from the specifiedType.getProvisionablesByIds(IdList provisionableIds) Gets aProvisionableListcorresponding to the givenIdList.getProvisionablesByParentGenusType(Type provisionableGenusType) Gets aProvisionableListcorresponding to the given provisionable genusTypeand include any additional provisionables with genus types derived from the specifiedType.getProvisionablesByRecordType(Type provisionableRecordType) Gets aProvisionableListcontaining the given provisionable recordType.getProvisionablesForPool(Id poolId) Gets a list of provisionables for a pool.getProvisionablesForPoolOnDate(Id poolId, DateTime from, DateTime to) Gets a list of provisionables effective during the entire given date range inclusive but not confined to the date range.getProvisionablesForResource(Id resourceId) Gets a list of provisionables for a resource.getProvisionablesForResourceAndPool(Id resourceId, Id poolId) Gets a list of provisionables for a resource and pool.getProvisionablesForResourceAndPoolOnDate(Id resourceId, Id poolId, DateTime from, DateTime to) Gets a list of provisionables effective during the entire given date range inclusive but not confined to the date range.getProvisionablesForResourceOnDate(Id resourceId, DateTime from, DateTime to) Gets a list of provisionables for a resource and effective during the entire given date range inclusive but not confined to the date range.getProvisionablesOnDate(DateTime from, DateTime to) Gets a list of provisionables effective during the entire given date range inclusive but not confined to the date range.voidAll provisionables of any effective dates 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.voidOnly provisionables whose effective dates are current are returned by methods in this session.voidFederates the view for methods in this session.voidIsolates the view for methods in this session.voidA complete view of theProvisionablereturns 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
-
getDistributorId
Id getDistributorId()Gets theDistributorIdassociated with this session.- Returns:
- the
Distributor Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getDistributor
Gets theDistributorassociated with this session.- Returns:
- the distributor
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canLookupProvisionables
boolean canLookupProvisionables()Tests if this user can performProvisionablelookups. 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.
-
useComparativeProvisionableView
void useComparativeProvisionableView()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.
-
usePlenaryProvisionableView
void usePlenaryProvisionableView()A complete view of theProvisionablereturns 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.
-
useFederatedDistributorView
void useFederatedDistributorView()Federates the view for methods in this session. A federated view will include provisionables in distributors which are children of this distributor in the distributor hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedDistributorView
void useIsolatedDistributorView()Isolates the view for methods in this session. An isolated view restricts retrievals to this distributor only.- Compliance:
mandatory- This method is must be implemented.
-
useEffectiveProvisionableView
void useEffectiveProvisionableView()Only provisionables whose effective dates are current are returned by methods in this session.- Compliance:
mandatory- This method is must be implemented.
-
useAnyEffectiveProvisionableView
void useAnyEffectiveProvisionableView()All provisionables of any effective dates are returned by methods in this session.- Compliance:
mandatory- This method is must be implemented.
-
getProvisionable
Provisionable getProvisionable(Id provisionableId) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets theProvisionablespecified by itsId. In plenary mode, the exactIdis found or aNOT_FOUNDresults. Otherwise, the returnedProvisionablemay have a differentIdthan requested, such as the case where a duplicateIdwas assigned to aProvisionableand retained for compatibility. In effective mode, provisionables are returned that are currently effective. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
provisionableId- theIdof theProvisionableto retrieve- Returns:
- the returned
Provisionable - Throws:
NotFoundException- noProvisionablefound with the givenIdNullArgumentException-provisionableIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesByIds
ProvisionableList getProvisionablesByIds(IdList provisionableIds) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets aProvisionableListcorresponding to the givenIdList. In plenary mode, the returned list contains all of the provisionables 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, inaccessibleProvisionablesmay be omitted from the list and may present the elements in any order including returning a unique set. In effective mode, provisionables are returned that are currently effective. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
provisionableIds- the list ofIdsto retrieve- Returns:
- the returned
Provisionablelist - Throws:
NotFoundException- anIdwas not foundNullArgumentException-provisionableIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesByGenusType
ProvisionableList getProvisionablesByGenusType(Type provisionableGenusType) throws OperationFailedException, PermissionDeniedException Gets aProvisionableListcorresponding to the given provisionable genusTypewhich does not include provisionables of types derived from the specifiedType. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
provisionableGenusType- a provisionable genus type- Returns:
- the returned
Provisionablelist - Throws:
NullArgumentException-provisionableGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesByParentGenusType
ProvisionableList getProvisionablesByParentGenusType(Type provisionableGenusType) throws OperationFailedException, PermissionDeniedException Gets aProvisionableListcorresponding to the given provisionable genusTypeand include any additional provisionables with genus types derived from the specifiedType. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
provisionableGenusType- a provisionable genus type- Returns:
- the returned
Provisionablelist - Throws:
NullArgumentException-provisionableGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesByRecordType
ProvisionableList getProvisionablesByRecordType(Type provisionableRecordType) throws OperationFailedException, PermissionDeniedException Gets aProvisionableListcontaining the given provisionable recordType. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
provisionableRecordType- a provisionable record type- Returns:
- the returned
Provisionablelist - Throws:
NullArgumentException-provisionableRecordTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesOnDate
ProvisionableList getProvisionablesOnDate(DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException Gets a list of provisionables effective during the entire given date range inclusive but not confined to the date range. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective in addition to being effective in the given date range. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
from- start of date rangeto- end of date range- Returns:
- the returned
Provisionablelist - Throws:
InvalidArgumentException-fromis greater thantoNullArgumentException-fromortoisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesForResource
ProvisionableList getProvisionablesForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException Gets a list of provisionables for a resource. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
resourceId- a resourceId- Returns:
- the returned
Provisionablelist - Throws:
NullArgumentException-resourceIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesForResourceOnDate
ProvisionableList getProvisionablesForResourceOnDate(Id resourceId, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException Gets a list of provisionables for a resource and effective during the entire given date range inclusive but not confined to the date range. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective in addition to being effective in the given date range. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
resourceId- a resourceIdfrom- start of date rangeto- end of date range- Returns:
- the returned
Provisionablelist - Throws:
InvalidArgumentException-fromis greater thantoNullArgumentException-resourceId, fromortoisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesForPool
ProvisionableList getProvisionablesForPool(Id poolId) throws OperationFailedException, PermissionDeniedException Gets a list of provisionables for a pool. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
poolId- a poolId- Returns:
- the returned
Provisionablelist - Throws:
NullArgumentException-poolIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesForPoolOnDate
ProvisionableList getProvisionablesForPoolOnDate(Id poolId, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException Gets a list of provisionables effective during the entire given date range inclusive but not confined to the date range. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective in addition to being effective in the given date range. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
poolId- a poolIdfrom- start of date rangeto- end of date range- Returns:
- the returned
Provisionablelist - Throws:
InvalidArgumentException-fromis greater thantoNullArgumentException-poolId, fromortoisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesForResourceAndPool
ProvisionableList getProvisionablesForResourceAndPool(Id resourceId, Id poolId) throws OperationFailedException, PermissionDeniedException Gets a list of provisionables for a resource and pool. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
resourceId- a resourceIdpoolId- a poolId- Returns:
- the returned
Provisionablelist - Throws:
NullArgumentException-resourceIdorpoolIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionablesForResourceAndPoolOnDate
ProvisionableList getProvisionablesForResourceAndPoolOnDate(Id resourceId, Id poolId, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException Gets a list of provisionables effective during the entire given date range inclusive but not confined to the date range. In plenary mode, the returned list contains all known provisionables or an error results. Otherwise, the returned list may contain only those provisionables that are accessible through this session. In effective mode, provisionables are returned that are currently effective in addition to being effective in the given date range. In any effective mode, effective provisionables and those currently expired are returned.- Parameters:
resourceId- a resourceIdpoolId- a poolIdfrom- start of date rangeto- end of date range- Returns:
- the returned
Provisionablelist - Throws:
InvalidArgumentException-fromis greater thantoNullArgumentException-resourceId, poolId, fromortoisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getProvisionables
Gets all provisionables. In plenary mode, the returned list contains all of the provisionables including duplicates, or an error results if anIdin the supplied list is not found or inaccessible. Otherwise, inaccessibleProvisionablesmay be omitted from the list and may present the elements in any order including returning a unique set. In effective mode, provisionables are returned that are currently effective. In any effective mode, effective provisionables and those currently expired are returned.- Returns:
- the returned
Provisionablelist - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-