| Interface | osid.offering.rules.OfferingConstrainerAdminSession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session creates and removes offering constrainers. The 
                data for create and update is provided via the   | ||
| Method | getCatalogueId | ||
| Description | 
                     Gets the   | ||
| Return | osid.id.Id | the  Catalogue Id  associated with this session  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getCatalogue | ||
| Description | 
                     Gets the   | ||
| Return | osid.offering.Catalogue | the catalogue | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canCreateOfferingConstrainer | ||
| Description | 
                     Tests if this user can create offering constrainers. A 
                    return of true does not guarantee successful 
                    authorization. A return of false indicates that it is 
                    known creating an   | ||
| Return | boolean |  false  if  OfferingConstrainer  creation is not 
authorized,  true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | canCreateOfferingConstrainerWithRecordTypes | ||
| Description | 
                     
  | ||
| Parameters | osid.type.Type[] | offeringConstrainerRecordTypes | array of offering constrainer record types | 
| Return | boolean |  true  if  OfferingConstrainer  creation using 
the specified record  Types  is supported,  false  
otherwise  | |
| Errors | NULL_ARGUMENT |  offeringConstrainerRecordTypes  is  null   |                 |
| Compliance | mandatory | This method must be implemented. | |
| Method | getOfferingConstrainerFormForCreate | ||
| Description | 
                     Gets the offering constrainer form for creating new offering constrainers. A new form should be requested for each create transaction.  | ||
| Parameters | osid.type.Type[] | offeringConstrainerRecordTypes | array of offering constrainer record types | 
| Return | osid.offering.rules.OfferingConstrainerForm | the offering constrainer form | |
| Errors | NULL_ARGUMENT |  offeringConstrainerRecordTypes  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| UNSUPPORTED | unable to get form for requested record types | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | createOfferingConstrainer | ||
| Description | 
                     Creates a new   | ||
| Parameters | osid.offering.rules.OfferingConstrainerForm | offeringConstrainerForm | the form for this  OfferingConstrainer   | 
| Return | osid.offering.rules.OfferingConstrainer | the new  OfferingConstrainer   | |
| Errors | ILLEGAL_STATE |  offeringConstrainerForm  already used in a create transaction  |                 |
| INVALID_ARGUMENT | one or more of the form elements is invalid | ||
| NULL_ARGUMENT |  offeringConstrainerForm  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| UNSUPPORTED |  offeringConstrainerForm  did not originate from  
getOfferingConstrainerFormForCreate()   |                 ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canUpdateOfferingConstrainers | ||
| Description | 
                     Tests if this user can update offering constrainers. A 
                    return of true does not guarantee successful 
                    authorization. A return of false indicates that it is 
                    known updating an   | ||
| Return | boolean |  false  if  OfferingConstrainer  modification is 
not authorized,  true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getOfferingConstrainerFormForUpdate | ||
| Description | 
                     Gets the offering constrainer form for updating an existing offering constrainer. A new offering constrainer form should be requested for each update transaction.  | ||
| Parameters | osid.id.Id | offeringConstrainerId | the  Id  of the  OfferingConstrainer   | 
| Return | osid.offering.rules.OfferingConstrainerForm | the offering constrainer form | |
| Errors | NOT_FOUND |  offeringConstrainerId  is not found  |                 |
| NULL_ARGUMENT |  offeringConstrainerId  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | updateOfferingConstrainer | ||
| Description | 
                     Updates an existing offering constrainer.  | ||
| Parameters | osid.offering.rules.OfferingConstrainerForm | offeringConstrainerForm | the form containing the elements to be updated | 
| Errors | ILLEGAL_STATE |  offeringConstrainerForm  already used in an update 
transaction  |                 |
| INVALID_ARGUMENT | the form contains an invalid value | ||
| NULL_ARGUMENT |  offeringConstrainerForm  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| UNSUPPORTED |  offeringConstrainerForm  did not originate from  
getOfferingConstrainerFormForUpdate()   |                 ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canDeleteOfferingConstrainers | ||
| Description | 
                     Tests if this user can delete offering constrainers. A 
                    return of true does not guarantee successful 
                    authorization. A return of false indicates that it is 
                    known deleting an   | ||
| Return | boolean |  false  if  OfferingConstrainer  deletion is not 
authorized,  true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | deleteOfferingConstrainer | ||
| Description | 
                     Deletes an   | ||
| Parameters | osid.id.Id | offeringConstrainerId | the  Id  of the  OfferingConstrainer  to remove  | 
| Errors | NOT_FOUND |  offeringConstrainerId  not found  |                 |
| NULL_ARGUMENT |  offeringConstrainerId  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canManageOfferingConstrainerAliases | ||
| Description | 
                     Tests if this user can manage   | ||
| Return | boolean |  false  if  OfferingConstrainer  aliasing is not 
authorized,  true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | aliasOfferingConstrainer | ||
| Description | 
                     Adds an   | ||
| Parameters | osid.id.Id | offeringConstrainerId | the  Id  of an  OfferingConstrainer   | 
osid.id.Id | aliasId | the alias  Id   | |
| Errors | ALREADY_EXISTS |  aliasId  is already assigned  |                 |
| NOT_FOUND |  offeringConstrainerId  not found  |                 ||
| NULL_ARGUMENT |  offeringConstrainerId  or  aliasId  is  
null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |