Email::Sender::Role::CommonSending(3p)

NAME
Email::Sender::Role::CommonSending - the common sending tasks most Email::Sender classes will need

VERSION
version 2.601

DESCRIPTION
Email::Sender::Role::CommonSending provides a number of features that should ease writing new classes that perform the Email::Sender role. Instead of writing a "send" method, implementors will need to write a smaller "send_email" method, which will be passed an Email::Abstract object and envelope containing "from" and "to" entries. The "to" entry will be guaranteed to be an array reference.

A "success" method will also be provided as a shortcut for calling:

  Email::Sender::Success->new(...);

A few other minor details are handled by CommonSending; for more information, consult the source.

The methods documented here may be overridden to alter the behavior of the CommonSending role.

PERL VERSION
This library should run on perls released even a long time ago. It should work on any version of perl released in the last five years.

Although it may work on older versions of perl, no guarantee is made that the minimum required version will not be increased. The version may be increased for any reason, and there is no promise that patches will be accepted to lower the minimum required perl.

METHODS

  prepare_email
This method is passed a scalar and is expected to return an Email::Abstract object. You probably shouldn't override it in most cases.

  prepare_envelope
This method is passed a hashref and returns a new hashref that should be used as the envelope passed to the "send_email" method. This method is responsible for ensuring that the to entry is an array.

  success
  ...
  return $self->success;

This method returns a new Email::Sender::Success object. Arguments passed to this method are passed along to the Success's constructor. This is provided as a convenience for returning success from subclasses' "send_email" methods.

AUTHOR
Ricardo Signes <cpan@semiotic.systems>

COPYRIGHT AND LICENSE
This software is copyright (c) 2024 by Ricardo Signes.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.