Go to the latest version of this document.

# ``twisted`.`mail`.`interfaces`.`IServerFactoryPOP3``

interface documentation

`class IServerFactoryPOP3(Interface): (source)`

View In Hierarchy

An interface for querying capabilities of a POP3 server.

Any cap_* method may raise `NotImplementedError` if the particular capability is not supported. If `cap_EXPIRE()` does not raise `NotImplementedError`, `perUserExpiration()` must be implemented, otherwise they are optional. If `cap_LOGIN_DELAY()` is implemented, `perUserLoginDelay()` must be implemented, otherwise they are optional.

Method | `cap_EXPIRE` | Return the minimum number of days messages are retained.
Method | `cap_IMPLEMENTATION` | Return a string describing the POP3 server implementation.
Method | `cap_LOGIN_DELAY` | Return the minimum number of seconds between client logins.
Method | `perUserExpiration` | Indicate whether the message expiration policy differs per user.
Method | `perUserLoginDelay` | Indicate whether the login delay period differs per user.
Instance Variable | `challengers` | A mapping of challenger names to `IUsernameHashedPassword` provider.

def cap_EXPIRE(): (source)

Return the minimum number of days messages are retained.

Returns
`int` or `None` | The minimum number of days messages are retained or none, if the server never deletes messages.

def cap_IMPLEMENTATION(): (source)

Return a string describing the POP3 server implementation.

Returns
`bytes` | Server implementation information.

def cap_LOGIN_DELAY(): (source)

Return the minimum number of seconds between client logins.

Returns
`int` | The minimum number of seconds between client logins.

def perUserExpiration(): (source)

Indicate whether the message expiration policy differs per user.

Returns
`bool` | `True` when the message expiration policy differs per user, `False` otherwise.

def perUserLoginDelay(): (source)

Indicate whether the login delay period differs per user.

Returns
`bool` | `True` when the login delay differs per user, `False` otherwise.

challengers: `dict` of `bytes` -> `IUsernameHashedPassword` = (source)

A mapping of challenger names to `IUsernameHashedPassword` provider.