| Interface | osid.metering.MeterSmartUtilitySession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session manages queries and sequencing to create 
                "smart" dynamic catalogs. A   This   | ||
| Method | getUtilityId | ||
| Description | 
                     Gets the   | ||
| Return | osid.id.Id | the  Utility Id  associated with this session  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getUtility | ||
| Description | 
                     Gets the   | ||
| Return | osid.metering.Utility | the  Utility  associated with this session  | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canManageSmartUtilities | ||
| Description | 
                     Tests if this user can manage smart utilities. A return 
                    of true does not guarantee successful authorization. A 
                    return of false indicates that it is known all methods in 
                    this session will result in a   | ||
| Return | boolean |  false  if smart utility methods are not authorized,  
true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getMeterQuery | ||
| Description | 
                     Gets a meter query.  | ||
| Return | osid.metering.MeterQuery | the meter query | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getMeterSearchOrder | ||
| Description | 
                     Gets a meter search order.  | ||
| Return | osid.metering.MeterSearchOrder | the meter search order | |
| Compliance | mandatory | This method must be implemented. | |
| Method | applyMeterQuery | ||
| Description | 
                     Applies a meter query to this utility.  | ||
| Parameters | osid.metering.MeterQuery | meterQuery | the meter query | 
| Errors | NULL_ARGUMENT |  meterQuery  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure occurred | ||
| UNSUPPORTED |  meterQuery  not of this service  |                 ||
| Compliance | mandatory | This method must be implemented. | |
| Method | inspectMeterQuery | ||
| Description | 
                     Gets a meter query inspector for this utility.  | ||
| Return | osid.metering.MeterQueryInspector | the meter query inspector | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure occurred | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | applyMeterSequencing | ||
| Description | 
                     Applies a meter search order to this utility.  | ||
| Parameters | osid.metering.MeterSearchOrder | meterSearchOrder | the meter search order | 
| Errors | NULL_ARGUMENT |  meterSearchOrder  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure occurred | ||
| UNSUPPORTED |  meterSearchOrder  not of this service  |                 ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getMeterQueryFromInspector | ||
| Description | 
                     Gets a meter query from an inspector.  | ||
| Parameters | osid.metering.MeterQueryInspector | meterQueryInspector | a meter query inspector | 
| Return | osid.metering.MeterQuery | the meter query | |
| Errors | NULL_ARGUMENT |  meterQueryInspector  is  null   |                 |
| UNSUPPORTED |  meterQueryInspector  is not of this service  |                 ||
| Compliance | mandatory | This method must be implemented. | |