Parse and write rules in sieve scripts
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('\*(L"Subject\*(R"'); $cond->key_list('\*(L"Re: Test2\*(R"'); my $actions = 'fileinto \*(L"\s-1INBOX\s0.test\*(R"; stop;';
$rule->add_condition($cond); $rule->add_action($actions);
print $rule->write;
Arguments : order => : optionnal set priority for rule ctrl => : optionnal default 'if', else could be 'else', 'elsif' or 'vacation' test_list => : optionnal conditions by string or by Condition Object block => : optionnal 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 :
return 1 if rules are equals
Return rule in text format
set require for used conditions return conditions in text format
set require for used actions return actions in text format
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
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 by order return 1 on succes, 0 on failure
find action by order Returns: Net::Sieve::Script::Action object, 0 on error
delete action by order, first is 1;
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
Yves Agostini CPAN ID: YVESAGO Univ Metz [email protected] http://www.crium.univ-metz.fr
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 \s-1LICENSE\s0 file included with this module.