The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Mail::SimpleList::Alias - object representing a temporary mailing list

SYNOPSIS

    use Mail::SimpleList::Alias;
    my $alias   =  Mail::SimpleList::Alias->new(
        owner   => 'me@example.com',
        members => [
            'alice@example.com', 'bob@example.com', 'charlie@example.com'
        ],
    );

DESCRIPTION

A Mail::SimpleList::Alias object represents a temporary mailing list within Mail::SimpleList. It contains all of the attributes of the list and provides methods to query and to set them. The current attributes are owner, closed, expires, auto_add, description, members and name.

METHODS

  • new( %options )

    new() creates a new Mail::SimpleList::Alias object. Pass in a hash of attribute options to set them. By default, closed and expires are false, auto_add is true, and owner and members are empty.

  • members()

    Returns a reference to an array of the subscribed addresses.

  • add( @addresses )

    Adds a list of addresses to the Alias object. Duplicate addresses are not added. Returns a list of addresses that were actually added. This method tries very hard to add only the canonical representation of an address to prevent duplication.

  • remove_address( $address )

    Removes an address from the Alias. Returns true or false if the address could be removed. If the owner of the list is removed, the owner attribute will be cleared.

  • attributes()

    Returns a reference to a hash of valid attributes for Alias objects. This allows you to see which attributes you should actually care about.

  • owner( [ $new_owner ] )

    Given $new_owner, the e-mail address of a new owner, adds him to the alias if he is not already subscribed and makes him the new list owner. If the argument is not provided, returns the address of the current owner.

  • closed( [ $new_closed ] )

    Given $new_closed, updates the closed attribute of the Alias and returns the new value. If the argument is not provided, returns the current value.

  • expires( [ $new_expires ] )

    Given $new_expires, updates the expires attribute of the Alias and returns the new value. If the argument is not provided, returns the current value.

  • auto_add( [ $new_auto_add ] )

    Given $new_auto_add, updates the auto_add attribute of the Alias and returns the new value. If the argument is not provided, returns the current value.

  • description( [ $new_description ] )

    Given $new_description, updates the description attribute of the Alias and returns the new value. If the argument is not provided, returns the current value.

  • name( [ $new_name ] )

    Given $new_name, updates the name attribute of the Alias and returns the new value. If the argument is not provided, returns the current value. Note that this attribute is not saved; it is not intrinsic to the behavior of the Alias at all. Also note that only numbers, letters, the underscore, and the hyphen characters are allowed.

AUTHOR

chromatic, chromatic@wgz.org, with helpful suggestions from friends, family, and peers. Allison Randal suggested the name scheme.

BUGS

None known.

TODO

No plans. It's pretty nice as it is.

SEE ALSO

Mail::Action::Address, the parent class.

COPYRIGHT

Copyright (c) 2003 - 2016 chromatic. All rights reserved. This module is distributed under the same terms as Perl 5.30, in the hope that it is useful but under no warranty.