E-MailRelay

Public Member Functions | List of all members
GFilters::DeliveryFilter Class Reference

A concrete GSmtp::Filter class that copies the message to multiple spool sub-directories according to the envelope recipient list. More...

`#include <gdeliveryfilter.h>`

Inheritance diagram for GFilters::DeliveryFilter:
[legend]
Collaboration diagram for GFilters::DeliveryFilter:
[legend]

## Public Member Functions
| DeliveryFilter (GNet::EventState es, GStore::FileStore &, Filter::Type, const Filter::Config &, const std::string &spec)
| Constructor. More...
Public Member Functions inherited from GFilters::SimpleFilterBase
| SimpleFilterBase (GNet::EventState, Filter::Type, std::string_view id)
| Constructor. More...
virtual Result | run (const GStore::MessageId &, bool &special_out, GStore::FileStore::State)=0
| Runs the filter synchronously and returns the result.
std::string | prefix () const
| Returns a logging prefix derived from Filter::Type and filter id. More...
Public Member Functions inherited from GSmtp::Filter
virtual | ~Filter ()=default
| Destructor.
virtual std::string | id () const =0
| Returns the id passed to the derived-class constructor. More...
virtual bool | quiet () const =0
| Returns true if there is no need for logging.
virtual void | start (const GStore::MessageId &)=0
| Starts the filter for the given message. More...
virtual G::Slot::Signal< int > & | doneSignal () noexcept=0
| Returns a signal which is raised once start() has completed or failed. More...
virtual void | cancel ()=0
| Aborts any incomplete filtering.
virtual Result | result () const =0
| Returns the filter result, after the doneSignal() has been emitted.
virtual std::string | response () const =0
| Returns a non-empty SMTP response string iff the filter failed, or an empty response if successful or abandoned.
virtual int | responseCode () const =0
| An override for the SMTP response code for when the filter has failed. More...
virtual std::string | reason () const =0
| Returns a non-empty reason string iff the filter failed, or an empty reason if successful or abandoned.
virtual bool | special () const =0
| Returns true if the filter indicated special handling is required.
std::string | str (Type type) const
| Returns a diagnostic string for logging, including the filter result. More...

## Additional Inherited Members
Public Types inherited from GSmtp::Filter
enum class | Result { ok = 0 , abandon = 1 , fail = 2 }
enum class | Type { server , client , routing }
Static Public Member Functions inherited from GSmtp::Filter
static std::string_view | strtype (Type type) noexcept
| Returns a type string for logging: "filter", "client-filter" or "routing-filter". More...

## Detailed Description

A concrete GSmtp::Filter class that copies the message to multiple spool sub-directories according to the envelope recipient list.

The implementation delegates to GStore::FileDelivery.

Definition at line 40 of file gdeliveryfilter.h.

## Constructor & Destructor Documentation

## ◆ DeliveryFilter()

GFilters::DeliveryFilter::DeliveryFilter | ( | GNet::EventState | es,
|  | GStore::FileStore & | store,
|  | Filter::Type | filter_type,
|  | const Filter::Config & | filter_config,
|  | const std::string & | spec
| ) |  |

Constructor.

Definition at line 27 of file gdeliveryfilter.cpp.

The documentation for this class was generated from the following files:

- /tmp/slackdce/slackrepo.HKsbdz/build_emailrelay/emailrelay-2.6/src/gfilters/gdeliveryfilter.h
- /tmp/slackdce/slackrepo.HKsbdz/build_emailrelay/emailrelay-2.6/src/gfilters/gdeliveryfilter.cpp