Part of twisted.mail.imap4 View Source View In Hierarchy
Implements interfaces: twisted.mail.imap4.IMailboxListener
Protocol implementation for an IMAP4rev1 server.
The server can be in any of four states:
| Method | __init__ | Undocumented | 
| Method | capabilities | Undocumented | 
| Method | connectionMade | Called when a connection is made. | 
| Method | connectionLost | Called when the connection is shut down. | 
| Method | timeoutConnection | Called when the connection times out. | 
| Method | rawDataReceived | Override this for when raw data is received. | 
| Method | lineReceived | Override this for when each line is received. | 
| Method | parse_command | Undocumented | 
| Method | parse_pending | Undocumented | 
| Method | dispatchCommand | Undocumented | 
| Method | lookupCommand | Undocumented | 
| Method | arg_astring | Parse an astring from the line, return (arg, rest), possibly via a deferred (to handle literals) | 
| Method | arg_atom | Parse an atom from the line | 
| Method | arg_plist | Parse a (non-nested) parenthesised list from the line | 
| Method | arg_literal | Parse a literal from the line | 
| Method | arg_searchkeys | searchkeys | 
| Method | arg_seqset | sequence-set | 
| Method | arg_fetchatt | fetch-att | 
| Method | arg_flaglist | Flag part of store-att-flag | 
| Method | arg_line | Command line of UID command | 
| Method | opt_plist | Optional parenthesised list | 
| Method | opt_datetime | Optional date-time string | 
| Method | opt_charset | Optional charset of SEARCH command | 
| Method | sendServerGreeting | Undocumented | 
| Method | sendBadResponse | Undocumented | 
| Method | sendPositiveResponse | Undocumented | 
| Method | sendNegativeResponse | Undocumented | 
| Method | sendUntaggedResponse | Undocumented | 
| Method | sendContinuationRequest | Undocumented | 
| Method | listCapabilities | Undocumented | 
| Method | do_CAPABILITY | Undocumented | 
| Method | do_LOGOUT | Undocumented | 
| Method | do_NOOP | Undocumented | 
| Method | do_AUTHENTICATE | Undocumented | 
| Method | authenticate | Undocumented | 
| Method | do_STARTTLS | Undocumented | 
| Method | do_LOGIN | Undocumented | 
| Method | authenticateLogin | Lookup the account associated with the given parameters | 
| Method | do_NAMESPACE | Undocumented | 
| Method | do_IDLE | Undocumented | 
| Method | parse_idle | Undocumented | 
| Method | do_CREATE | Undocumented | 
| Method | do_DELETE | Undocumented | 
| Method | do_RENAME | Undocumented | 
| Method | do_SUBSCRIBE | Undocumented | 
| Method | do_UNSUBSCRIBE | Undocumented | 
| Method | do_STATUS | Undocumented | 
| Method | do_APPEND | Undocumented | 
| Method | do_CHECK | Undocumented | 
| Method | checkpoint | Called when the client issues a CHECK command. | 
| Method | do_CLOSE | Undocumented | 
| Method | do_EXPUNGE | Undocumented | 
| Method | do_SEARCH | Undocumented | 
| Method | search_ALL | Returns Trueif the message matches the ALL search key 
(always). | 
| Method | search_ANSWERED | Returns Trueif the message has been answered. | 
| Method | search_BCC | Returns Trueif the message has a BCC address matching the 
query. | 
| Method | search_BEFORE | Undocumented | 
| Method | search_BODY | Undocumented | 
| Method | search_CC | Undocumented | 
| Method | search_DELETED | Undocumented | 
| Method | search_DRAFT | Undocumented | 
| Method | search_FLAGGED | Undocumented | 
| Method | search_FROM | Undocumented | 
| Method | search_HEADER | Undocumented | 
| Method | search_KEYWORD | Undocumented | 
| Method | search_LARGER | Undocumented | 
| Method | search_NEW | Undocumented | 
| Method | search_NOT | Returns Trueif the message does not match the query. | 
| Method | search_OLD | Undocumented | 
| Method | search_ON | Undocumented | 
| Method | search_OR | Returns Trueif the message matches any of the first two 
query items. | 
| Method | search_RECENT | Undocumented | 
| Method | search_SEEN | Undocumented | 
| Method | search_SENTBEFORE | Returns Trueif the message date is earlier than the query 
date. | 
| Method | search_SENTON | Returns Trueif the message date is the same as the query 
date. | 
| Method | search_SENTSINCE | Returns Trueif the message date is later than the query 
date. | 
| Method | search_SINCE | Undocumented | 
| Method | search_SMALLER | Undocumented | 
| Method | search_SUBJECT | Undocumented | 
| Method | search_TEXT | Undocumented | 
| Method | search_TO | Undocumented | 
| Method | search_UID | Returns Trueif the message UID is in the range defined by 
the search query. | 
| Method | search_UNANSWERED | Undocumented | 
| Method | search_UNDELETED | Undocumented | 
| Method | search_UNDRAFT | Undocumented | 
| Method | search_UNFLAGGED | Undocumented | 
| Method | search_UNKEYWORD | Undocumented | 
| Method | search_UNSEEN | Undocumented | 
| Method | do_FETCH | Undocumented | 
| Method | spew_envelope | Undocumented | 
| Method | spew_flags | Undocumented | 
| Method | spew_internaldate | Undocumented | 
| Method | spew_rfc822header | Undocumented | 
| Method | spew_rfc822text | Undocumented | 
| Method | spew_rfc822size | Undocumented | 
| Method | spew_rfc822 | Undocumented | 
| Method | spew_uid | Undocumented | 
| Method | spew_bodystructure | Undocumented | 
| Method | spew_body | Undocumented | 
| Method | spewMessage | Undocumented | 
| Method | do_STORE | Undocumented | 
| Method | do_COPY | Undocumented | 
| Method | do_UID | Undocumented | 
| Method | modeChanged | Indicates that the write status of a mailbox has changed. | 
| Method | flagsChanged | Indicates that the flags of one or more messages have changed. | 
| Method | newMessages | Indicates that the number of messages in a mailbox has changed. | 
| Method | _unblock | Undocumented | 
| Method | __doCommand | Undocumented | 
| Method | __cbDispatch | Undocumented | 
| Method | __ebDispatch | Undocumented | 
| Method | _stringLiteral | Undocumented | 
| Method | _fileLiteral | Undocumented | 
| Method | _respond | Undocumented | 
| Method | _setupChallenge | Undocumented | 
| Method | __cbAuthChunk | Undocumented | 
| Method | __cbAuthResp | Undocumented | 
| Method | __ebAuthResp | Undocumented | 
| Method | __ebAuthChunk | Undocumented | 
| Method | __cbLogin | Undocumented | 
| Method | __ebLogin | Undocumented | 
| Method | _parseMbox | Undocumented | 
| Method | _selectWork | Undocumented | 
| Method | _ebSelectWork | Undocumented | 
| Method | _cbSelectWork | Undocumented | 
| Method | _listWork | Undocumented | 
| Method | _cbListWork | Undocumented | 
| Method | _ebListWork | Undocumented | 
| Method | _cbStatusGotMailbox | Undocumented | 
| Method | _ebStatusGotMailbox | Undocumented | 
| Method | __cbStatus | Undocumented | 
| Method | __ebStatus | Undocumented | 
| Method | _cbAppendGotMailbox | Undocumented | 
| Method | _ebAppendGotMailbox | Undocumented | 
| Method | __cbAppend | Undocumented | 
| Method | __ebAppend | Undocumented | 
| Method | __cbCheck | Undocumented | 
| Method | __ebCheck | Undocumented | 
| Method | __cbClose | Undocumented | 
| Method | __ebClose | Undocumented | 
| Method | __cbExpunge | Undocumented | 
| Method | __ebExpunge | Undocumented | 
| Method | __cbSearch | Undocumented | 
| Method | __cbManualSearch | Apply the search filter to a set of messages. Send the response to the client. | 
| Method | _searchFilter | Pop search terms from the beginning of queryuntil there 
are none left and apply them to the given message. | 
| Method | _singleSearchStep | Pop one search term from the beginning of query(possibly 
more than one element) and return whether it matches the given message. | 
| Method | __ebSearch | Undocumented | 
| Method | __cbFetch | Undocumented | 
| Method | __ebSpewMessage | Undocumented | 
| Method | __ebFetch | Undocumented | 
| Method | __cbStore | Undocumented | 
| Method | __ebStore | Undocumented | 
| Method | _cbCopySelectedMailbox | Undocumented | 
| Method | _ebCopySelectedMailbox | Undocumented | 
| Method | __cbCopy | Undocumented | 
| Method | __cbCopied | Undocumented | 
| Method | __ebCopy | Undocumented | 
Inherited from LineReceiver:
| Method | clearLineBuffer | Clear buffered data. | 
| Method | dataReceived | Protocol.dataReceived. Translates bytes into lines, and calls lineReceived (or rawDataReceived, depending on mode.) | 
| Method | setLineMode | Sets the line-mode of this receiver. | 
| Method | setRawMode | Sets the raw mode of this receiver. Further data received will be sent to rawDataReceived rather than lineReceived. | 
| Method | sendLine | Sends a line to the other end of the connection. | 
| Method | lineLengthExceeded | Called when the maximum line length has been reached. Override if it needs to be dealt with in some special way. | 
Inherited from Protocol (via LineReceiver):
| Method | logPrefix | Return a prefix matching the class name, to identify log messages related to this protocol instance. | 
Inherited from BaseProtocol (via LineReceiver, Protocol):
| Method | makeConnection | Make a connection to a transport and a server. | 
Inherited from _PauseableMixin (via LineReceiver):
| Method | pauseProducing | Undocumented | 
| Method | resumeProducing | Undocumented | 
| Method | stopProducing | Undocumented | 
Inherited from TimeoutMixin:
| Method | callLater | Wrapper around reactor.callLaterfor test purpose. | 
| Method | resetTimeout | Reset the timeout count down. | 
| Method | setTimeout | Change the timeout period | 
| Method | __timedOut | Undocumented | 
This may be considered the initializer of the protocol, because it is called when the connection is completed. For clients, this is called once the connection to the server has been established; for servers, this is called after an accept() call stops blocking and a socket has been received. If you need to send any greeting or initial message, do it here.
Clear any circular references here, and any external references to this Protocol. The connection has been closed.
| Parameters | reason | (type: twisted.python.failure.Failure) | 
Override to define behavior other than dropping the connection.
| Parameters | line | The line which was received with the delimiter removed.
 (type: str) | 
Override this method to define the desired authentication behavior.
The default behavior is to defer authentication to 
self.portal if it is not None, or to deny the login 
otherwise.
| Parameters | user | The username to lookup
 (type: str) | 
| passwd | The password to login with
 (type: str) | 
This should perform any checkpoint operations required by the server. It may be a long running operation, but may not block. If it returns a deferred, the client will only be informed of success (or failure) when the deferred's callback (or errback) is invoked.
| Parameters | result | A list two tuples of messages with their sequence ids, sorted by the ids in
descending order.
 (type: listoftupleof (int, provider ofimap4.IMessage)
) | 
| tag | A command tag.
 (type: str) | |
| mbox | The searched mailbox.
 (type: Provider of imap4.IMailbox) | |
| query | A list representing the parsed form of the search query.
 (type: list) | |
| uid | A flag indicating whether the search is over message sequence numbers or UIDs. | |
| searchResults | The search results so far or Noneif no results yet.
 (type:list) | 
query until there 
are none left and apply them to the given message.| Parameters | query | A list representing the parsed form of the search query. | 
| id | The sequence number of the message being checked. | |
| msg | The message being checked. | |
| lastSequenceId | The highest sequence number of any message in the mailbox being searched.
 (type: int) | |
| lastMessageId | The highest UID of any message in the mailbox being searched.
 (type: int) | |
| Returns | Boolean indicating whether all of the query terms match the message. | |
query (possibly 
more than one element) and return whether it matches the given message.| Parameters | query | A list representing the parsed form of the search query. | 
| id | The sequence number of the message being checked. | |
| msg | The message being checked. | |
| lastSequenceId | The highest sequence number of any message in the mailbox being searched. | |
| lastMessageId | The highest UID of any message in the mailbox being searched. | |
| Returns | Boolean indicating whether the query term matched the message. | |
True if the message matches the ALL search key 
(always).| Parameters | query | A list representing the parsed query string.
 (type: A listofstr) | 
| id | The sequence number of the message being checked.
 (type: int) | |
| msg | (type: Provider of imap4.IMessage) | 
True if the message has been answered.| Parameters | query | A list representing the parsed query string.
 (type: A listofstr) | 
| id | The sequence number of the message being checked.
 (type: int) | |
| msg | (type: Provider of imap4.IMessage) | 
True if the message has a BCC address matching the 
query.| Parameters | query | A list whose first element is a BCC str(type: Alistofstr) | 
| id | The sequence number of the message being checked.
 (type: int) | |
| msg | (type: Provider of imap4.IMessage) | 
True if the message does not match the query.| Parameters | query | A list representing the parsed form of the search query.
 (type: A listofstr) | 
| id | The sequence number of the message being checked.
 (type: int) | |
| msg | The message being checked.
 (type: Provider of imap4.IMessage) | |
| lastSequenceId | The highest sequence number of a message in the mailbox.
 (type: int) | |
| lastMessageId | The highest UID of a message in the mailbox.
 (type: int) | 
True if the message matches any of the first two 
query items.| Parameters | query | A list representing the parsed form of the search query.
 (type: A listofstr) | 
| id | The sequence number of the message being checked.
 (type: int) | |
| msg | The message being checked.
 (type: Provider of imap4.IMessage) | |
| lastSequenceId | The highest sequence number of a message in the mailbox.
 (type: int) | |
| lastMessageId | The highest UID of a message in the mailbox.
 (type: int) | 
True if the message date is earlier than the query 
date.| Parameters | query | A list whose first element starts with a stringified date that is a 
fragment of an imap4.Query(). The 
date must be in the format 'DD-Mon-YYYY', for example '03-March-2003' or 
'03-Mar-2003'.
 (type: Alistofstr) | 
| id | The sequence number of the message being checked.
 (type: int) | |
| msg | (type: Provider of imap4.IMessage) | 
True if the message date is the same as the query 
date.| Parameters | query | A list whose first element starts with a stringified date that is a 
fragment of an imap4.Query(). The 
date must be in the format 'DD-Mon-YYYY', for example '03-March-2003' or 
'03-Mar-2003'.
 (type: Alistofstr) | 
| msg | (type: Provider of imap4.IMessage) | 
True if the message date is later than the query 
date.| Parameters | query | A list whose first element starts with a stringified date that is a 
fragment of an imap4.Query(). The 
date must be in the format 'DD-Mon-YYYY', for example '03-March-2003' or 
'03-Mar-2003'.
 (type: Alistofstr) | 
| msg | (type: Provider of imap4.IMessage) | 
True if the message UID is in the range defined by 
the search query.| Parameters | query | A list representing the parsed form of the search query. Its first element 
should be a strthat can be interpreted as a sequence range, 
for example '2:4,5:*'.
 (type: Alistofstr) | 
| id | The sequence number of the message being checked.
 (type: int) | |
| msg | The message being checked.
 (type: Provider of imap4.IMessage) | |
| lastSequenceId | The highest sequence number of a message in the mailbox.
 (type: int) | |
| lastMessageId | The highest UID of a message in the mailbox.
 (type: int) | 
| Parameters | writeable | A true value if write is now allowed, false otherwise.
 (type: bool) | 
| Parameters | newFlags | A mapping of message identifiers to tuples of flags now set on that 
message.
 (type: dict) | 
| Parameters | exists | The total number of messages now in this mailbox. If the total number of 
messages has not changed, this should be None.
 (type:intorNone) | 
| recent | The number of messages now flagged \Recent. If the number of recent 
messages has not changed, this should be None.
 (type:int) |