| Interface | osid.subscription.rules.SubscriptionEnablerAdminSession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session creates and removes subscription enablers. The 
                data for create and update is provided via the   | ||
| Method | getPublisherId | ||
| Description | 
                     Gets the   | ||
| Return | osid.id.Id | the  Publisher Id  associated with this session  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getPublisher | ||
| Description | 
                     Gets the   | ||
| Return | osid.subscription.Publisher | the publisher | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canCreateSubscriptionEnabler | ||
| Description | 
                     Tests if this user can create subscription enablers. A 
                    return of true does not guarantee successful 
                    authorization. A return of false indicates that it is 
                    known creating a   | ||
| Return | boolean |  false  if  SubscriptionEnabler  creation is not 
authorized,  true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | canCreateSubscriptionEnablerWithRecordTypes | ||
| Description | 
                     Tests if this user can create a single   | ||
| Parameters | osid.type.Type[] | subscriptionEnablerRecordTypes | array of subscription enabler record types | 
| Return | boolean |  true  if  SubscriptionEnabler  creation using 
the specified record  Types  is supported,  false  
otherwise  | |
| Errors | NULL_ARGUMENT |  subscriptionEnablerRecordTypes  is  null   |                 |
| Compliance | mandatory | This method must be implemented. | |
| Method | getSubscriptionEnablerFormForCreate | ||
| Description | 
                     Gets the subscription enabler form for creating new subscription enablers. A new form should be requested for each create transaction.  | ||
| Parameters | osid.type.Type[] | subscriptionEnablerRecordTypes | array of subscription enabler record types | 
| Return | osid.subscription.rules.SubscriptionEnablerForm | the subscription enabler form | |
| Errors | NULL_ARGUMENT |  subscriptionEnablerRecordTypes  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 | createSubscriptionEnabler | ||
| Description | 
                     Creates a new   | ||
| Parameters | osid.subscription.rules.SubscriptionEnablerForm | subscriptionEnablerForm | the form for this  SubscriptionEnabler   | 
| Return | osid.subscription.rules.SubscriptionEnabler | the new  SubscriptionEnabler   | |
| Errors | ILLEGAL_STATE |  subscriptionEnablerForm  already used in a create transaction  |                 |
| INVALID_ARGUMENT | one or more of the form elements is invalid | ||
| NULL_ARGUMENT |  subscriptionEnablerForm  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| UNSUPPORTED |  subscriptionEnablerForm  did not originate from  
getSubscriptionEnablerFormForCreate()   |                 ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canUpdateSubscriptionEnablers | ||
| Description | 
                     Tests if this user can update subscription enablers. A 
                    return of true does not guarantee successful 
                    authorization. A return of false indicates that it is 
                    known updating a   | ||
| Return | boolean |  false  if  SubscriptionEnabler  modification is 
not authorized,  true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getSubscriptionEnablerFormForUpdate | ||
| Description | 
                     Gets the subscription enabler form for updating an existing subscription enabler. A new subscription enabler form should be requested for each update transaction.  | ||
| Parameters | osid.id.Id | subscriptionEnablerId | the  Id  of the  SubscriptionEnabler   | 
| Return | osid.subscription.rules.SubscriptionEnablerForm | the subscription enabler form | |
| Errors | NOT_FOUND |  subscriptionEnablerId  is not found  |                 |
| NULL_ARGUMENT |  subscriptionEnablerId  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | updateSubscriptionEnabler | ||
| Description | 
                     Updates an existing subscription enabler.  | ||
| Parameters | osid.subscription.rules.SubscriptionEnablerForm | subscriptionEnablerForm | the form containing the elements to be updated | 
| Errors | ILLEGAL_STATE |  subscriptionEnablerForm  already used in an update 
transaction  |                 |
| INVALID_ARGUMENT | the form contains an invalid value | ||
| NULL_ARGUMENT |  subscriptionEnablerForm  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| UNSUPPORTED |  subscriptionEnablerForm  did not originate from  
getSubscriptionEnablerFormForUpdate()   |                 ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canDeleteSubscriptionEnablers | ||
| Description | 
                     Tests if this user can delete subscription enablers. A 
                    return of true does not guarantee successful 
                    authorization. A return of false indicates that it is 
                    known deleting a   | ||
| Return | boolean |  false  if  SubscriptionEnabler  deletion is not 
authorized,  true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | deleteSubscriptionEnabler | ||
| Description | 
                     Deletes a   | ||
| Parameters | osid.id.Id | subscriptionEnablerId | the  Id  of the  SubscriptionEnabler  to remove  | 
| Errors | NOT_FOUND |  subscriptionEnablerId  not found  |                 |
| NULL_ARGUMENT |  subscriptionEnablerId  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canManageSubscriptionEnablerAliases | ||
| Description | 
                     Tests if this user can manage   | ||
| Return | boolean |  false  if  SubscriptionEnabler  aliasing is not 
authorized,  true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | aliasSubscriptionEnabler | ||
| Description | 
                     Adds an   | ||
| Parameters | osid.id.Id | subscriptionEnablerId | the  Id  of a  SubscriptionEnabler   | 
osid.id.Id | aliasId | the alias  Id   | |
| Errors | ALREADY_EXISTS |  aliasId  is already assigned  |                 |
| NOT_FOUND |  subscriptionEnablerId  not found  |                 ||
| NULL_ARGUMENT |  subscriptionEnablerId  or  aliasId  is  
null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |