- new
- public class (Mail::SpamAssassin::BayesStore) new
(Mail::SpamAssassin::Plugin::Bayes $bayes)
Description: This method creates a new instance of the
Mail::SpamAssassin::BayesStore object. You must pass in an instance of
the Mail::SpamAssassin::Plugin::Bayes object, which is stashed for use
throughout the module.
- DB_VERSION
- public instance (Integer) DB_VERSION ()
Description: This method returns the currently supported
database version for the implementation.
- read_db_configs
- public instance () read_db_configs ()
Description: This method reads any needed config variables
from the configuration object and then calls the
Mail::SpamAssassin::Plugin::Bayes read_db_configs method.
- prefork_init
- public instance (Boolean) prefork_init ()
Description: This optional method is called in the parent
process shortly before forking off child processes.
- spamd_child_init
- public instance (Boolean) spamd_child_init ()
Description: This optional method is called in a child process
shortly after being spawned.
- tie_db_readonly
- public instance (Boolean) tie_db_readonly ()
Description: This method opens up the database in readonly
mode.
- tie_db_writable
- public instance (Boolean) tie_db_writable ()
Description: This method opens up the database in writable
mode.
Any callers of this methods should ensure that they call
untie_db() afterwards.
- untie_db
- public instance () untie_db ()
Description: This method unties the database.
- calculate_expire_delta
- public instance (%) calculate_expire_delta (Integer
$newest_atime,
Integer $start,
Integer $max_expire_mult)
Description: This method performs a calculation on the data to
determine the optimum atime for token expiration.
- token_expiration
- public instance (Integer, Integer,
Integer, Integer) token_expiration(\% $opts,
Integer $newest_atime,
Integer $newdelta)
Description: This method performs the database specific
expiration of tokens based on the passed in
$newest_atime and
$newdelta.
- expire_old_tokens
- public instance (Boolean) expire_old_tokens (\% hashref)
Description: This method expires old tokens from the
database.
- expire_old_tokens_trapped
- public instance (Boolean) expire_old_tokens_trapped (\%
$opts)
Description: This methods does the actual token
expiration.
XXX More docs here about the methodology and what not
- sync_due
- public instance (Boolean) sync_due ()
Description: This methods determines if a sync is due.
- expiry_due
- public instance (Boolean) expiry_due ()
Description: This methods determines if an expire is due.
- seen_get
- public instance (Char) seen_get (String $msgid)
Description: This method retrieves the stored value, if any,
for $msgid. The return value is the stored
string ('s' for spam and 'h' for ham) or undef if
$msgid is not found.
- seen_put
- public instance (Boolean) seen_put (String $msgid,
Char $flag)
Description: This method records
$msgid as the type given by
$flag. $flag is one of
two values 's' for spam and 'h' for ham.
- seen_delete
- public instance (Boolean) seen_delete (String
$msgid)
Description: This method removes
$msgid from storage.
- get_storage_variables
- public instance (@) get_storage_variables ()
Description: This method retrieves the various administrative
variables used by the Bayes storage implementation.
The values returned in the array are in the following
order:
0: scan count base
1: number of spam
2: number of ham
3: number of tokens in db
4: last expire atime
5: oldest token in db atime
6: db version value
7: last journal sync
8: last atime delta
9: last expire reduction count
10: newest token in db atime
- dump_db_toks
- public instance () dump_db_toks (String $template,
String $regex, @ @vars)
Description: This method loops over all tokens, computing the
probability for the token and then printing it out according to the
passed in template.
- set_last_expire
- public instance (Boolean) _set_last_expire (Integer
$time)
Description: This method sets the last expire time.
- get_running_expire_tok
- public instance (Time) get_running_expire_tok ()
Description: This method determines if an expire is currently
running and returns the time the expire started.
- set_running_expire_tok
- public instance (Time) set_running_expire_tok ()
Description: This method sets the running expire time to the
current time.
- remove_running_expire_tok
- public instance (Boolean) remove_running_expire_tok ()
Description: This method removes a currently set running
expire time.
- tok_get
- public instance (Integer, Integer, Time) tok_get (String
$token)
Description: This method retrieves the specified token
($token) from storage and returns it's spam
count, ham count and last access time.
- tok_get_all
- public instance (\@) tok_get_all (@ @tokens)
Description: This method retrieves the specified tokens
(@tokens) from storage and returns an array ref
of arrays spam count, ham count and last access time.
- tok_count_change
- public instance (Boolean) tok_count_change (Integer
$spam_count,
Integer $ham_count,
String $token,
Time $atime)
Description: This method takes a
$spam_count and
$ham_count and adds it to
$token along with updating
$tokens atime with
$atime.
- multi_tok_count_change
- public instance (Boolean) multi_tok_count_change (Integer
$spam_count,
Integer $ham_count, \%
$tokens, String
$atime)
Description: This method takes a
$spam_count and
$ham_count and adds it to all of the tokens in
the $tokens hash ref along with updating each
tokens atime with $atime.
- nspam_nham_get
- public instance (Integer, Integer) nspam_nham_get ()
Description: This method retrieves the total number of spam
and the total number of ham currently under storage.
- nspam_nham_change
- public instance (Boolean) nspam_nham_change (Integer
$num_spam,
Integer $num_ham)
Description: This method updates the number of spam and the
number of ham in the database.
- tok_touch
- public instance (Boolean) tok_touch (String
$token,
Time $atime)
Description: This method updates the given tokens
($token) access time.
- tok_touch_all
- public instance (Boolean) tok_touch_all (\@
$tokens,
Time $atime)
Description: This method does a mass update of the given list
of tokens $tokens, if the existing token atime
is < $atime.
- cleanup
- public instance (Boolean) cleanup ()
Description: This method performs any cleanup necessary before
moving onto the next operation.
- get_magic_re
- public instance get_magic_re (String)
Description: This method returns a regexp which indicates a
magic token.
- sync
- public instance (Boolean) sync (\% $opts)
Description: This method performs a sync of the database.
- perform_upgrade
- public instance (Boolean) perform_upgrade (\%
$opts)
Description: This method is a utility method that performs any
necessary upgrades between versions. It should know how to handle
previous versions and what needs to happen to upgrade them.
A true return value indicates success.
- clear_database
- public instance (Boolean) clear_database ()
Description: This method deletes all records for a particular
user.
Callers should be aware that any errors returned by this
method could causes the database to be inconsistent for the given
user.
- backup_database
- public instance (Boolean) backup_database ()
Description: This method will dump the users database in a
machine readable format.
- restore_database
- public instance (Boolean) restore_database (String
$filename, Boolean
$showdots)
Description: This method restores a database from the given
filename, $filename.
Callers should be aware that any errors returned by this
method could causes the database to be inconsistent for the given
user.
- db_readable
- public instance (Boolean) db_readable ()
Description: This method returns whether or not the Bayes DB
is available in a readable state.
- db_writable
- public instance (Boolean) db_writable ()
Description: This method returns whether or not the Bayes DB
is available in a writable state.