Interface ItemBankAssignmentSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session provides methods to re-assign Items to
Banks . An Item may map to multiple Banks and removing
the last reference to an Item is the equivalent of deleting it.
Each Bank may have its own authorizations governing who is allowed
to operate on it.
Moving or adding a reference of an Item to another
Bank is not a copy operation (eg: does not change its Id ).
-
Method Summary
Modifier and TypeMethodDescriptionvoidassignItemToBank(Id itemId, Id bankId) Adds an existingItemto aBank.booleanTests if this user can alter item/bank mappings.booleancanAssignItemsToBank(Id bankId) Tests if this user can alter item/bank mappings.getAssignableBankIds(Id bankId) Gets a list of banks including and under the given bank node in which any item can be assigned.getAssignableBankIdsForItem(Id bankId, Id itemId) Gets a list of banks including and under the given bank node in which a specific item can be assigned.voidreassignItemToBank(Id itemId, Id fromBankId, Id toBankId) Moves anItemfrom oneBankto another.voidunassignItemFromBank(Id itemId, Id bankId) Removes anItemfrom aBank.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
-
canAssignItems
boolean canAssignItems()Tests if this user can alter item/bank mappings. A return of true does not guarantee successful assessment. A return of false indicates that it is known mapping methods in this session will result in aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.- Returns:
falseif mapping is not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
canAssignItemsToBank
Tests if this user can alter item/bank mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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.- Parameters:
bankId- theIdof theBank- Returns:
falseif mapping is not authorized,trueotherwise- Throws:
NullArgumentException-bankIdisnull- Compliance:
mandatory- This method must be implemented.
-
getAssignableBankIds
Gets a list of banks including and under the given bank node in which any item can be assigned.- Parameters:
bankId- theIdof theBank- Returns:
- list of assignable bank
Ids - Throws:
NullArgumentException-bankIdisnullOperationFailedException- unable to complete request- Compliance:
mandatory- This method must be implemented.
-
getAssignableBankIdsForItem
Gets a list of banks including and under the given bank node in which a specific item can be assigned.- Parameters:
bankId- theIdof theBankitemId- theIdof theItem- Returns:
- list of assignable bank
Ids - Throws:
NullArgumentException-bankIdoritemIdisnullOperationFailedException- unable to complete request- Compliance:
mandatory- This method must be implemented.
-
assignItemToBank
void assignItemToBank(Id itemId, Id bankId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds an existingItemto aBank.- Parameters:
itemId- theIdof theItembankId- theIdof theBank- Throws:
AlreadyExistsException-itemIdis already assigned tobankIdNotFoundException-itemIdorbankIdnot foundNullArgumentException-itemIdorbankIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure occurred- Compliance:
mandatory- This method must be implemented.
-
unassignItemFromBank
void unassignItemFromBank(Id itemId, Id bankId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes anItemfrom aBank.- Parameters:
itemId- theIdof theItembankId- theIdof theBank- Throws:
NotFoundException-itemIdorbankIdnot found oritemIdnot assigned tobankIdNullArgumentException-itemIdorbankIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure occurred- Compliance:
mandatory- This method must be implemented.
-
reassignItemToBank
void reassignItemToBank(Id itemId, Id fromBankId, Id toBankId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Moves anItemfrom oneBankto another. Mappings to otherBanksare unaffected.- Parameters:
itemId- theIdof theItemfromBankId- theIdof the currentBanktoBankId- theIdof the destinationBank- Throws:
AlreadyExistsException-itemIdalready assigned totoBankIdNotFoundException-itemId, fromBankId, ortoBankIdnot found oritemIdnot mapped tofromBankIdNullArgumentException-itemId, fromBankId, ortoBankIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-