| Interface | osid.metering.StatisticNotificationSession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session defines methods to receive notifications on statistics. This session is intended for consumers needing to synchronize their state with this service without the use of polling. Notifications are cancelled when this session is closed.  | ||
| 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 | canRegisterForStatisticNotifications | ||
| Description | 
                     Tests if this user can register for   | ||
| Return | boolean |  false  if notification methods are not authorized,  
true  otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | useFederatedUtilityView | ||
| Description | 
                     Federates the view for methods in this session. A federated view will include statistics from parent utilities in the utility hierarchy.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useIsolatedUtilityView | ||
| Description | 
                     Isolates the view for methods in this session. An isolated view restricts notifications for statistics to this utility only.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | registerForStatisticsExceedingSumThreshold | ||
| Description | 
                     Register for notifications sums exceeding a threshold. 
                      | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsFailingSumThreshold | ||
| Description | 
                     Register for notifications sums failing a threshold. 
                      | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsExceedingMeanThreshold | ||
| Description | 
                     Register for notifications of means exceeding a 
                    threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsFailingMeanThreshold | ||
| Description | 
                     Register for notifications means failing a threshold. 
                      | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsExceedingMedianThreshold | ||
| Description | 
                     Register for notifications of medians exceeding a 
                    threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsFailingMedianThreshold | ||
| Description | 
                     Register for notifications of medians failing a 
                    threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsExceedingRMSThreshold | ||
| Description | 
                     Register for notifications of the root mean square 
                    exceeding a threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsFailingRMSThreshold | ||
| Description | 
                     Register for notifications of the root mean square 
                    failing a threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId or units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsExceedingDeltaThreshold | ||
| Description | 
                     Register for notifications of the delta exceeding a 
                    threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsFailingDeltaThreshold | ||
| Description | 
                     Register for notifications of the delta failing a 
                    threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsExceedingPercentChangeThreshold | ||
| Description | 
                     Register for notifications of the percentage change 
                    exceeding a threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId  or  units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsFailingPercentChangeThreshold | ||
| Description | 
                     Register for notifications of the percentage change 
                    failing a threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
| Errors | NULL_ARGUMENT |  meterId or units  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsExceedingAverageRateThreshold | ||
| Description | 
                     Register for notifications of the rate exceeding a 
                    threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
osid.calendaring.DateTimeResolution | rateInterval | the time interval of the rate | |
| Errors | NULL_ARGUMENT |  meterId, units,  or  rateInterval  is  
null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | registerForStatisticsFailingAverageRateThreshold | ||
| Description | 
                     Register for notifications of the rate failing a 
                    threshold.   | ||
| Parameters | osid.id.Id | meterId | the meter  Id   | 
cardinal | interval | the time interval from the present | |
osid.calendaring.DateTimeResolution | units | the date time units | |
decimal | value | the threshold value | |
osid.calendaring.DateTimeResolution | rateInterval | the time interval of the rate | |
| Errors | NULL_ARGUMENT |  meterId, units,  or  rateInterval  is  
null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |