76 lines
1.9 KiB
PHP
76 lines
1.9 KiB
PHP
<?php
|
|
/**
|
|
* Copyright 2010-2017 Horde LLC (http://www.horde.org/)
|
|
*
|
|
* See the enclosed file COPYING for license information (LGPL). If you
|
|
* did not receive this file, see http://www.horde.org/licenses/lgpl21.
|
|
*
|
|
* @author Jan Schneider <jan@horde.org>
|
|
* @category Horde
|
|
* @license http://www.horde.org/licenses/lgpl21 LGPL-2.1
|
|
* @package Alarm
|
|
*/
|
|
|
|
/**
|
|
* The Horde_Alarm_Handler class is an interface for all Horde_Alarm handlers
|
|
* that notifies of active alarms.
|
|
*
|
|
* @author Jan Schneider <jan@horde.org>
|
|
* @category Horde
|
|
* @copyright 2010-2017 Horde LLC
|
|
* @license http://www.horde.org/licenses/lgpl21 LGPL-2.1
|
|
* @package Alarm
|
|
*/
|
|
abstract class Horde_Alarm_Handler
|
|
{
|
|
/**
|
|
* The alarm object to that this handler is attached.
|
|
*
|
|
* Horde_Alarm
|
|
*/
|
|
public $alarm;
|
|
|
|
/**
|
|
* Notifies about an alarm.
|
|
*
|
|
* @param array $alarm An alarm hash.
|
|
*
|
|
* @throws Horde_Alarm_Exception
|
|
*/
|
|
abstract public function notify(array $alarm);
|
|
|
|
/**
|
|
* Resets the internal status of the handler, so that alarm notifications
|
|
* are sent again.
|
|
*
|
|
* @param array $alarm An alarm hash.
|
|
*/
|
|
public function reset(array $alarm)
|
|
{
|
|
}
|
|
|
|
/**
|
|
* Returns a human readable description of the handler.
|
|
*
|
|
* @return string
|
|
*/
|
|
abstract public function getDescription();
|
|
|
|
/**
|
|
* Returns a hash of user-configurable parameters for the handler.
|
|
*
|
|
* The parameters are hashes with parameter names as keys and parameter
|
|
* information as values. The parameter information is a hash with the
|
|
* following keys:
|
|
* - type: the parameter type as a preference type.
|
|
* - desc: a parameter description.
|
|
* - required: whether this parameter is required.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getParameters()
|
|
{
|
|
return array();
|
|
}
|
|
}
|