class documentation

class POP3Client(basic.LineOnlyReceiver): (source)

View In Hierarchy

A POP3 client protocol.
Method __init__ Issue deprecation warning.
Method apop Send an APOP command to perform authenticated login.
Method apopAuthenticate Perform an authenticated login.
Method dele Send a DELE command to delete a message from the server.
Method handle_default Handle responses from the server for which no other handler exists.
Method handle_WELCOME Handle a server response which is expected to be a server greeting.
Method lineReceived Dispatch a received line for processing.
Method list Send a LIST command to retrieve the size of a message or, if no message is specified, the sizes of all messages.
Method password Perform the second half of a plaintext login.
Method quit Send a QUIT command to disconnect from the server.
Method retr Send a RETR command to retrieve a message from the server.
Method sendLong Send a POP3 command to which a long response is expected.
Method sendShort Send a POP3 command to which a short response is expected.
Method uidl Send a UIDL command to retrieve the unique identifier of a message or, if no message is specified, the unique identifiers of all messages.
Method user Send a USER command to perform the first half of a plaintext login.
Instance Variable command The command most recently sent to the server.
Instance Variable mode The type of response expected from the server. Choices include none (0), a one line response (1), the first line of a multi-line response (2), and subsequent lines of a multi-line response (3).
Instance Variable welcomeCode The APOP challenge passed in the server greeting.
Instance Variable welcomeRe A regular expression which matches the APOP challenge in the server greeting.
Method _dispatch Dispatch a response from the server for handling.

Inherited from LineOnlyReceiver:

Method dataReceived Translates bytes into lines, and calls lineReceived.
Method lineLengthExceeded Called when the maximum line length has been reached. Override if it needs to be dealt with in some special way.
Method sendLine Sends a line to the other end of the connection.
Class Variable delimiter The line-ending delimiter to use. By default this is b'\r\n'.
Class Variable MAX_LENGTH The maximum length of a line to allow (If a sent line is longer than this, the connection is dropped). Default is 16384.
Instance Variable _buffer Undocumented

Inherited from Protocol (via LineOnlyReceiver):

Method connectionLost Called when the connection is shut down.
Method logPrefix Return a prefix matching the class name, to identify log messages related to this protocol instance.
Class Variable factory Undocumented

Inherited from BaseProtocol (via LineOnlyReceiver, Protocol):

Method connectionMade Called when a connection is made.
Method makeConnection Make a connection to a transport and a server.
Instance Variable connected Undocumented
Instance Variable transport Undocumented
def __init__(self): (source)
Issue deprecation warning.
def apop(self, user, digest): (source)
Send an APOP command to perform authenticated login.
Parameters
user:bytesThe username with which to log in.
digest:bytesThe challenge response with which to authenticate.
def apopAuthenticate(self, user, password, magic): (source)
Perform an authenticated login.
Parameters
user:bytesThe username with which to log in.
password:bytesThe password with which to log in.
magic:bytesThe challenge provided by the server.
def dele(self, i): (source)
Send a DELE command to delete a message from the server.
Parameters
i:int or bytesA 0-based message index.
def handle_default(self, line): (source)
Handle responses from the server for which no other handler exists.
Parameters
line:bytesA received line.
def handle_WELCOME(self, line): (source)
Handle a server response which is expected to be a server greeting.
Parameters
line:bytesA received line.
def lineReceived(self, line): (source)

Dispatch a received line for processing.

The choice of function to handle the received line is based on the type of response expected to the command sent to the server and how much of that response has been received.

An expected one line response to command X is handled by handle_X(). The first line of a multi-line response to command X is also handled by handle_X(). Subsequent lines of the multi-line response are handled by handle_X_continue() except for the last line which is handled by handle_X_end().

Parameters
line:bytesA received line.
def list(self, i=''): (source)
Send a LIST command to retrieve the size of a message or, if no message is specified, the sizes of all messages.
Parameters
i:int or bytesA 0-based message index or the empty string to specify all messages.
def password(self, password): (source)
Perform the second half of a plaintext login.
Parameters
password:bytesThe plaintext password with which to authenticate.
def quit(self): (source)
Send a QUIT command to disconnect from the server.
def retr(self, i): (source)
Send a RETR command to retrieve a message from the server.
Parameters
i:int or bytesA 0-based message index.
def sendLong(self, command, params): (source)
Send a POP3 command to which a long response is expected.
Parameters
command:bytesA POP3 command.
params:stringifyable objectCommand arguments.
def sendShort(self, command, params=None): (source)
Send a POP3 command to which a short response is expected.
Parameters
command:bytesA POP3 command.
params:stringifyable object or NoneCommand arguments.
def uidl(self, i=''): (source)
Send a UIDL command to retrieve the unique identifier of a message or, if no message is specified, the unique identifiers of all messages.
Parameters
i:int or bytesA 0-based message index or the empty string to specify all messages.
def user(self, name): (source)
Send a USER command to perform the first half of a plaintext login.
Parameters
name:bytesThe username with which to log in.
command: bytes = (source)
The command most recently sent to the server.
mode: int = (source)
The type of response expected from the server. Choices include none (0), a one line response (1), the first line of a multi-line response (2), and subsequent lines of a multi-line response (3).
welcomeCode: bytes = (source)
The APOP challenge passed in the server greeting.
welcomeRe: Pattern = (source)
A regular expression which matches the APOP challenge in the server greeting.
def _dispatch(self, command, default, *args): (source)

Dispatch a response from the server for handling.

Command X is dispatched to handle_X() if it exists. If not, it is dispatched to the default handler.

Parameters
command:bytesThe command.
default:callable that takes bytes or NoneThe default handler.
args:tuple or NoneArguments to the handler function.