NAME
Net::Sieve::Script::Rule - parse and write rules in sieve scripts
SYNOPSIS
use Net::Sieve::Script::Rule;
my $pRule = Net::Sieve::Script::Rule->new (
ctrl => $ctrl,
test_list => $test_list,
block => $block,
order => $order
);
or my $rule = Net::Sieve::Script::Rule->new(); my $cond = Net::Sieve::Script::Condition->new('header'); $cond->match_type(':contains'); $cond->header_list('"Subject"'); $cond->key_list('"Re: Test2"'); my $actions = 'fileinto "INBOX.test"; stop;';
$rule->add_condition($cond);
$rule->add_action($actions);
print $rule->write;
DESCRIPTION
CONSTRUCTOR
new
Arguments :
order => : optional set priority for rule
ctrl => : optional default 'if', else could be 'else', 'elsif'
or 'vacation'
test_list => : optional conditions by string or by Condition Object
block => : optional block of commands
Returns : Net::Sieve::Script::Rule object
Set accessors
alternate : as param ctrl
conditions : first condition in tree
actions : array of actions objects
priority : rule order in script, main id for rule
require :
METHODS
equals
return 1 if rules are equals
write
Return rule in text format
write_condition
set require for used conditions
return conditions in text format
write_action
set require for used actions
return actions in text format
delete_condition
Purpose : delete condition by rule, delete all block on delete anyof/allof
delete single anyof/allof block : single condition move up
Arguments : condition id
Returns : 1 on success, 0 on error
add_condition
Purpose : add condition to rule, add 'allof' group on second rule
Arguments : string or Condition object
Returns : new condition id or 0 on error
swap_actions
swap actions by order
return 1 on succes, 0 on failure
find_action
find action by order
Returns: Net::Sieve::Script::Action object, 0 on error
delete_action
delete action by order, first is 1;
add_action
Purpose : add action at end of block
Arguments : command line
or command line list with ; separator
or Net::Sieve::Script::Action object
Return : 1 on success
AUTHOR
Yves Agostini
CPAN ID: YVESAGO
yvesago@cpan.org
COPYRIGHT
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the LICENSE file included with this module.