* @author Jan Schneider * @category Horde * @license http://www.horde.org/licenses/apache ASL * @package Ingo */ /** * The Ingo_Script_Sieve_Action class represents an action in a Sieve script. * * An action is anything that has a side effect eg: discard, redirect. * * @author Mike Cochrane * @author Jan Schneider * @category Horde * @license http://www.horde.org/licenses/apache ASL * @package Ingo */ abstract class Ingo_Script_Sieve_Action implements Ingo_Script_Item { /** * Any necessary action parameters. * * @var array */ protected $_vars = array(); /** * Checks if the rule parameters are valid. * * @return boolean|string True if this rule is valid, an error message * otherwise. */ abstract public function check(); /** * Returns a list of sieve extensions required for this rule and any * sub-rules. * * @return array A Sieve extension list. */ public function requires() { return array(); } }