internal package
Foswiki::Contrib::MailerContrib::WebNotify
On this page:
- internal package Foswiki::Contrib::MailerContrib::WebNotify
- new($web, $topic)
- writeWebNotify()
- getSubscriber($name, $noAdd)
- getSubscribers()
- subscribe($name, $topics, $depth, $options)
- unsubscribe($name, $topics, $depth)
- stringify() -> string
- processChange($change, $db, $changeSet, $seenSet, $allSet)
- processCompulsory($topic, $db, \%allSet)
- isEmpty() -> boolean
internal package
Foswiki::Contrib::MailerContrib::WebNotify
Object that represents the contents of a WebNotify topic in a Foswiki web.
Note that $Foswiki::Plugins::SESSION
is used to find the Foswiki session, and
must be set up before this class is used.
new($web, $topic)
-
$web
- web name -
$topic
- topic name -
$noexpandgroups
- True will prevent expansion of group subscriptions (False is best for checking subscriptions, but True is best for writing results back to $topic)
writeWebNotify()
Write the object to the WebNotify topic it was read from. If there is a problem writing the topic (e.g. it is locked), the method will throw an exception.getSubscriber($name, $noAdd)
-
$name
- Name of subscriber (wikiname with no web or email address) -
$noAdd
- If false or undef, a new subscriber will be created for this name
getSubscribers()
Get a list of all subscriber names (unsorted)subscribe($name, $topics, $depth, $options)
-
$name
- Name of subscriber (wikiname with no web or email address) -
$topics
- wildcard expression giving topics to subscribe to -
$depth
- Child depth to scan (default 0) -
$options
- Bitmap of Mailer::Const options
unsubscribe($name, $topics, $depth)
-
$name
- Name of subscriber (wikiname with no web or email address) -
$topics
- wildcard expression giving topics to subscribe to -
$depth
- Child depth to scan (default 0)
stringify() -> string
Return a string representation of this object, in WebNotify format. Optional$subscribersOnly
parameter to only print the parsed subscription list.
Used when running a mailnotify, where printing out the entire WebNotify topic is confusing,
as it's different from the actual topic contents, but doesn't inform the user why.
processChange($change, $db, $changeSet, $seenSet, $allSet)
-
$change
- ref of a Foswiki::Contrib::Mailer::Change -
$db
- Foswiki::Contrib::MailerContrib::UpData database of parent references -
$changeSet
- ref of a hash mapping emails to sets of changes -
$seenSet
- ref of a hash recording indices of topics already seen -
$allSet
- ref of a hash that maps topics to email addresses for news subscriptions
processCompulsory($topic, $db, \%allSet)
-
$topic
- topic name -
$db
- Foswiki::Contrib::MailerContrib::UpData database of parent references -
\%allSet
- ref of a hash that maps topics to email addresses for news subscriptions