unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (Debian-5.0)
Page:
Section:
Apropos / Subsearch:
optional field

Mail::Message::Head::LUserrContributed PerlMail::Message::Head::ListGroup(3pm)



NAME
       Mail::Message::Head::ListGroup - mailinglist related header fields

INHERITANCE
        Mail::Message::Head::ListGroup
          is a Mail::Message::Head::FieldGroup
          is a Mail::Reporter

SYNOPSIS
        my $lg = Mail::Message::Head::ListGroup->new(head => $head, ...);
        $head->addListGroup($lg);

        my $lg = $head->addListGroup(...);

        $lg->delete;

DESCRIPTION
       A list group is a set of header fields which are added by mailing-list
       managing software.  This class knowns various details about that
       software.

       The knowledge and test messages which are used to initially implement
       this module is taken from Mail::ListDetector, written by Michael
       Stevens <mailto:michaelATetla.org>.  The logic is redesigned to add
       flexibility and use the powerful MailBox features.

METHODS
       Constructors

       $obj->address

           Returns a Mail::Message::Field::Address object (or "undef") which
           defines the posting address of the mailing list.

       $obj->clone

           See "Constructors" in Mail::Message::Head::FieldGroup

       $obj->from(HEAD|MESSAGE)

           Create a "Mail::Message::Head::ListGroup" based in the specified
           MESSAGE or message HEAD.

       $obj->implementedTypes

       Mail::Message::Head::ListGroup->implementedTypes

           See "Constructors" in Mail::Message::Head::FieldGroup

       $obj->listname

           Returns the name of the mailing list, which is usually a part of
           the e-mail address which is used to post the messages to.

       Mail::Message::Head::ListGroup->new(FIELDS, OPTIONS)

           Construct an object which maintains one set of mailing list headers

            Option  --Defined in     --Default
            address                    undef
            head      Mail::Message::Head::FieldGroup  undef
            listname                   <derived from address>
            log       Mail::Reporter   'WARNINGS'
            rfc                        undef
            software  Mail::Message::Head::FieldGroup  undef
            trace     Mail::Reporter   'WARNINGS'
            type      Mail::Message::Head::FieldGroup  undef
            version   Mail::Message::Head::FieldGroup  undef

           . address => STRING|OBJECT

               Address of the mailing list, which may be specified as STRING
               or e-mail containing object (a Mail::Address or Mail::Identity.
               In any case, the data is converted into a Mail::Identity.

           . head => HEAD

           . listname => STRING

               A short textual representation of the mailing-list.

           . log => LEVEL

           . rfc => 'rfc2919'|'rfc2369'

               Defines the mailing list software follows an rfc.

           . software => STRING

           . trace => LEVEL

           . type => STRING

           . version => STRING

       $obj->rfc

           When the mailing list software follows the guidelines of one of the
           dedicated RFCs, then this will be returned otherwise "undef".  The
           return values can be "rfc2919", "rfc2369", or "undef".

       The header

       $obj->add((FIELD, VALUE) | OBJECT)

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->addFields([FIELDNAMES])

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->attach(HEAD)

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->delete

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->fieldNames

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->fields

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->head

           See "The header" in Mail::Message::Head::FieldGroup

       Access to the header

       $obj->isListGroupFieldName(NAME)

       Mail::Message::Head::ListGroup->isListGroupFieldName(NAME)

       $obj->software

           See "Access to the header" in Mail::Message::Head::FieldGroup

       $obj->type

           See "Access to the header" in Mail::Message::Head::FieldGroup

       $obj->version

           See "Access to the header" in Mail::Message::Head::FieldGroup

       Internals

       $obj->collectFields

           Scan the header for fields which are usually contained in mailing
           list software.  This method is automatically called when a list
           group is constructed from() an existing header or message.

           Returned are the names of the list header fields found, in scalar
           context the amount.  An empty list/zero indicates that this is not
           a mailing list message.

           Please warn the author of MailBox if you see that to few or too
           many fields are included.

       $obj->detected(TYPE, SOFTWARE, VERSION)

           See "Internals" in Mail::Message::Head::FieldGroup

       Error handling

       $obj->AUTOLOAD

           See "Error handling" in Mail::Reporter

       $obj->addReport(OBJECT)

           See "Error handling" in Mail::Reporter

       $obj->defaultTrace([LEVEL]|[LOGLEVEL, TRACELEVEL]|[LEVEL, CALLBACK])

       Mail::Message::Head::ListGroup->defaultTrace([LEVEL]|[LOGLEVEL,
       TRACELEVEL]|[LEVEL, CALLBACK])

           See "Error handling" in Mail::Reporter

       $obj->details

           Produce information about the detected/create list group, which may
           be helpful during debugging, by default to the selected file
           handle.

       $obj->errors

           See "Error handling" in Mail::Reporter

       $obj->log([LEVEL [,STRINGS]])

       Mail::Message::Head::ListGroup->log([LEVEL [,STRINGS]])

           See "Error handling" in Mail::Reporter

       $obj->logPriority(LEVEL)

       Mail::Message::Head::ListGroup->logPriority(LEVEL)

           See "Error handling" in Mail::Reporter

       $obj->logSettings

           See "Error handling" in Mail::Reporter

       $obj->notImplemented

           See "Error handling" in Mail::Reporter

       $obj->print([FILEHANDLE])

           See "Error handling" in Mail::Message::Head::FieldGroup

       $obj->report([LEVEL])

           See "Error handling" in Mail::Reporter

       $obj->reportAll([LEVEL])

           See "Error handling" in Mail::Reporter

       $obj->trace([LEVEL])

           See "Error handling" in Mail::Reporter

       $obj->warnings

           See "Error handling" in Mail::Reporter

       Cleanup

       $obj->DESTROY

           See "Cleanup" in Mail::Reporter

       $obj->inGlobalDestruction

           See "Cleanup" in Mail::Reporter

DETAILS
       Mailing list fields

       Detected lists

       The Mail::Message::Head::ListGroup class can detect many different
       mailing lists, some of which are very popular and some of which are
       rare.

       Numerous fields in a header are addded when the message is passed
       through a mailing list server.  Each list software has defined its own
       fields, sometimes woth conflicting definitions.  There are also two
       RFCs about mailing list: "rfc2919" and "rfc2369".

       The following lists are currently detected.  Between parenthesis is the
       string returned by type() when that differs from the software name.

       o   CommuniGate

           Legacy commercial MacOS implementation by Stalker Software Inc.
           <http://www.stalker.com/mac/default.html>;

       o   CommuniGate Pro (CommuniGatePro)

           Commercial rfc2919 compliant implementation by Stalker Software
           Inc.  <http://www.stalker.com>;

       o   Ecartis

           Commercial mailing list manager, formerly known as Listar. Produced
           by NodeRunner Computing.  See <http://www.ecartis.com>;.

       o   Ezmlm

           Open Source mailing list manager, available from
           <http://www.ezmlm.org>;.

       o   FML

           Open Source mailing list manager, see <http://www.fml.org>;.

       o   Listar

           Old name for Ecartis.

       o   Listbox

           Mailing lists defined at <http://listbox.com>;.

       o   Mailman

           GNU's mailing list manager, available from <http://www.list.org>;.

       o   Majordomo

           Free (licenced) mailing list manager by Great Circle Associates,
           available from <http://www.greatcircle.com/majordomo/>;

       o   Smartlist

           Related to procmail, as expressed by their shared main page at
           <http://www.procmail.org/>;.

       o   Yahoo! Groups (YahooGroups)

           Mailing lists defined at <http://groups.yahoo.com>;.

       o   Listserv

           Commercial mailing list manager, produced by L-Soft. See
           <http://www.lsoft.com/>;.

DIAGNOSTICS
       Error: Cannot convert "$string" into an address object

           The new(address) is coerced into a Mail::Message::Field::Address,
           which fails.  Have a look at
           Mail::Message::Field::Address::coerce() to see what valid arguments
           are.

       Error: Package $package does not implement $method.

           Fatal error: the specific package (or one of its superclasses) does
           not implement this method where it should. This message means that
           some other related classes do implement this method however the
           class at hand does not.  Probably you should investigate this and
           probably inform the author of the package.

SEE ALSO
       This module is part of Mail-Box distribution version 2.082, built on
       April 28, 2008. Website: http://perl.overmeer.net/mailbox/

LICENSE
       Copyrights 2001-2008 by Mark Overmeer. For other contributors see
       ChangeLog.

       This program is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself.  See
       http://www.perl.com/perl/misc/Artistic.html



perl v5.10.0                      2008-04-2Mail::Message::Head::ListGroup(3pm)