OSID Logo
OSID Specifications
billing package
Version 3.0.0
Release Candidate Preview
Interfaceosid.billing.CustomerBusinessAssignmentSession
Implementsosid.OsidSession
Description

This session provides methods to re-assign Customers to Business objects A Customer may appear in multiple Business objects and removing the last reference to a Customer is the equivalent of deleting it. Each Business may have its own authorizations governing who is allowed to operate on it.

Adding a reference of a Customer to another Business is not a copy operation (eg: does not change its Id ).

MethodcanAssignCustomers
Description

Tests if this user can alter customer/business 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 a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.

Returnboolean false if mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignCustomerToBusiness
Description

Tests if this user can alter customer/business 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 a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

Parametersosid.id.IdbusinessIdthe Id of the Business
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT businessId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableBusinessIds
Description

Gets a list of businesses including and under the given business node in which any customer can be assigned.

Parametersosid.id.IdbusinessIdthe Id of the Business
Returnosid.id.IdListlist of assignable business Ids
ErrorsNULL_ARGUMENT businessId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableBusinessIdsForCustomer
Description

Gets a list of businesses including and under the given business node in which a specific customer can be assigned.

Parametersosid.id.IdbusinessIdthe Id of the Business
osid.id.IdcustomerIdthe Id of the Customer
Returnosid.id.IdListlist of assignable business Ids
ErrorsNULL_ARGUMENT businessId or customerId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignCustomerToBusiness
Description

Adds an existing Customer to a Business.

Parametersosid.id.IdcustomerIdthe Id of the Customer
osid.id.IdbusinessIdthe Id of the Business
ErrorsALREADY_EXISTS customerId is already assigned to businessId
NOT_FOUND customerId or businessId not found
NULL_ARGUMENT customerId or businessId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignCustomerFromBusiness
Description

Removes a Customer from a Business.

Parametersosid.id.IdcustomerIdthe Id of the Customer
osid.id.IdbusinessIdthe Id of the Business
ErrorsNOT_FOUND customerId or businessId not found or customerId not assigned to businessId
NULL_ARGUMENT customerId or businessId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignCustomerToBusiness
Description

Moves a Customer from one Business to another. Mappings to other Businesses are unaffected.

Parametersosid.id.IdcustomerIdthe Id of the Customer
osid.id.IdfromBusinessIdthe Id of the current Business
osid.id.IdtoBusinessIdthe Id of the destination Business
ErrorsNOT_FOUND customerId, fromBusinessId, or toBusinessId not found or customerId not mapped to fromBusinessId
NULL_ARGUMENT customerId, fromBusinessId, or toBusinessId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.