Public Member Functions

nsIImapProtocol Interface Reference

import "nsIImapProtocol.idl";

List of all members.

Public Member Functions

void LoadImapUrl (in nsIURI aUrl, in nsISupports aConsumer)
void IsBusy (out boolean aIsConnectionBusy, out boolean isInboxConnection)
 IsBusy returns true if the connection is currently processing a url and false otherwise.
void CanHandleUrl (in nsIImapUrl aImapUrl, out boolean aCanRunUrl, out boolean hasToWait)
 Protocol instance examines the url, looking at the host name, user name and folder the action would be on in order to figure out if it can process this url.
void Initialize (in nsIImapHostSessionList aHostSessionList, in nsIImapIncomingServer aServer, in nsIEventTarget aSinkEventTarget)
 Right now, initialize requires the event queue of the UI thread, or more importantly the event queue of the consumer of the imap protocol data.
void NotifyHdrsToDownload (out unsigned long keys, in unsigned long keyCount)
void NotifyBodysToDownload (out unsigned long keys, in unsigned long count)
void GetFlagsForUID (in unsigned long uid, out boolean foundIt, out unsigned short flags, out string customFlags)
void GetSupportedUserFlags (out unsigned short flags)
void GetRunningImapURL (out nsIImapUrl aImapUrl)
void GetRunningUrl (out nsIURI aUrl)
void tellThreadToDie (in boolean aIsSafeToClose)
 Tell thread to die - only call from the UI thread.
void GetLastActiveTimeStamp (out PRTime aTimeStamp)
void pseudoInterruptMsgLoad (in nsIMsgFolder imapFolder, in nsIMsgWindow aMsgWindow, out boolean interrupted)
void GetSelectedMailboxName (out string folderName)
void ResetToAuthenticatedState ()
void OverrideConnectionInfo (in wstring pHost, in unsigned short pPort, in string pCookieData)

Member Function Documentation

void nsIImapProtocol::CanHandleUrl ( in nsIImapUrl  aImapUrl,
out boolean  aCanRunUrl,
out boolean  hasToWait 
)

Protocol instance examines the url, looking at the host name, user name and folder the action would be on in order to figure out if it can process this url.

I decided to push the semantics about whether a connection can handle a url down into the connection level instead of in the connection cache.

void nsIImapProtocol::GetFlagsForUID ( in unsigned long  uid,
out boolean  foundIt,
out unsigned short  flags,
out string  customFlags 
)
void nsIImapProtocol::GetLastActiveTimeStamp ( out PRTime  aTimeStamp  ) 
void nsIImapProtocol::GetRunningImapURL ( out nsIImapUrl  aImapUrl  ) 
void nsIImapProtocol::GetRunningUrl ( out nsIURI  aUrl  ) 
void nsIImapProtocol::GetSelectedMailboxName ( out string  folderName  ) 
void nsIImapProtocol::GetSupportedUserFlags ( out unsigned short  flags  ) 
void nsIImapProtocol::Initialize ( in nsIImapHostSessionList  aHostSessionList,
in nsIImapIncomingServer  aServer,
in nsIEventTarget  aSinkEventTarget 
)

Right now, initialize requires the event queue of the UI thread, or more importantly the event queue of the consumer of the imap protocol data.

The protocol also needs a host session list.

void nsIImapProtocol::IsBusy ( out boolean  aIsConnectionBusy,
out boolean  isInboxConnection 
)

IsBusy returns true if the connection is currently processing a url and false otherwise.

void nsIImapProtocol::LoadImapUrl ( in nsIURI  aUrl,
in nsISupports  aConsumer 
)
void nsIImapProtocol::NotifyBodysToDownload ( out unsigned long  keys,
in unsigned long  count 
)
void nsIImapProtocol::NotifyHdrsToDownload ( out unsigned long  keys,
in unsigned long  keyCount 
)
void nsIImapProtocol::OverrideConnectionInfo ( in wstring  pHost,
in unsigned short  pPort,
in string  pCookieData 
)
void nsIImapProtocol::pseudoInterruptMsgLoad ( in nsIMsgFolder  imapFolder,
in nsIMsgWindow  aMsgWindow,
out boolean  interrupted 
)
void nsIImapProtocol::ResetToAuthenticatedState (  ) 
void nsIImapProtocol::tellThreadToDie ( in boolean  aIsSafeToClose  ) 

Tell thread to die - only call from the UI thread.

Parameters:
aIsSafeToClose false if we're dropping a timed out connection.

The documentation for this interface was generated from the following file: