Interface ProvisionDistributorAssignmentSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session provides methods to re-assign Provisions to
Distributor mappings. A Provision may appear in multiple
Distributor objects and removing the last reference to a
Provision is the equivalent of deleting it. Each Distributor may
have its own authorizations governing who is allowed to operate on it.
Adding a reference of a Provision to another
Distributor is not a copy operation (eg: does not change its Id
).
-
Method Summary
Modifier and TypeMethodDescriptionvoidassignProvisionToDistributor(Id provisionId, Id distributorId) Adds an existingProvisionto aDistributor.booleanTests if this user can alter provision/distributor mappings.booleancanAssignProvisionsToDistributor(Id distributorId) Tests if this user can alter provision/distributor mappings.getAssignableDistributorIds(Id distributorId) Gets a list of distributors including and under the given distributor node in which any provision can be assigned.getAssignableDistributorIdsForProvision(Id distributorId, Id provisionId) Gets a list of distributors including and under the given distributor node in which a specific provision can be assigned.voidreassignProvisionToDistributor(Id provisionId, Id fromDistributorId, Id toDistributorId) Moves aProvisionfrom oneDistributorto another.voidunassignProvisionFromDistributor(Id provisionId, Id distributorId) Removes aProvisionfrom aDistributor.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
-
canAssignProvisions
boolean canAssignProvisions()Tests if this user can alter provision/distributor 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 assignment operations to unauthorized users.- Returns:
falseif provisioning is not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
canAssignProvisionsToDistributor
Tests if this user can alter provision/distributor 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 assignment operations to unauthorized users.- Parameters:
distributorId- theIdof theDistributor- Returns:
falseif provisioning is not authorized,trueotherwise- Throws:
NullArgumentException-distributorIdisnull- Compliance:
mandatory- This method must be implemented.
-
getAssignableDistributorIds
Gets a list of distributors including and under the given distributor node in which any provision can be assigned.- Parameters:
distributorId- theIdof theDistributor- Returns:
- list of assignable distributor
Ids - Throws:
NullArgumentException-distributorIdisnullOperationFailedException- unable to complete request- Compliance:
mandatory- This method must be implemented.
-
getAssignableDistributorIdsForProvision
IdList getAssignableDistributorIdsForProvision(Id distributorId, Id provisionId) throws OperationFailedException Gets a list of distributors including and under the given distributor node in which a specific provision can be assigned.- Parameters:
distributorId- theIdof theDistributorprovisionId- theIdof theProvision- Returns:
- list of assignable distributor
Ids - Throws:
NullArgumentException-distributorIdorprovisionIdisnullOperationFailedException- unable to complete request- Compliance:
mandatory- This method must be implemented.
-
assignProvisionToDistributor
void assignProvisionToDistributor(Id provisionId, Id distributorId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds an existingProvisionto aDistributor.- Parameters:
provisionId- theIdof theProvisiondistributorId- theIdof theDistributor- Throws:
AlreadyExistsException-provisionIdis slready assigned todistributorIdNotFoundException-provisionIdordistributorIdnot foundNullArgumentException-provisionIdordistributorIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
unassignProvisionFromDistributor
void unassignProvisionFromDistributor(Id provisionId, Id distributorId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes aProvisionfrom aDistributor.- Parameters:
provisionId- theIdof theProvisiondistributorId- theIdof theDistributor- Throws:
NotFoundException-provisionIdordistributorIdnot found orprovisionIdnot assigned todistributorIdNullArgumentException-provisionIdordistributorIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
reassignProvisionToDistributor
void reassignProvisionToDistributor(Id provisionId, Id fromDistributorId, Id toDistributorId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Moves aProvisionfrom oneDistributorto another. Mappings to otherDistributorsare unaffected.- Parameters:
provisionId- theIdof theProvisionfromDistributorId- theIdof the currentDistributortoDistributorId- theIdof the destinationDistributor- Throws:
AlreadyExistsException-provisionIdalready assigned totoDistributorIdNotFoundException-provisionId, fromDistributorId, ortoDistributorIdnot found orprovisionIdnot mapped tofromDistributorIdNullArgumentException-provisionId, fromDistributorId, ortoDistributorIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-