Portability | portable |
---|---|
Stability | stable |
Maintainer | mukai@jmuk.org |
IMAP client implementation
- data BSStream s => IMAPConnection s
- mailbox :: BSStream s => IMAPConnection s -> IO Mailbox
- exists :: BSStream s => IMAPConnection s -> IO Integer
- recent :: BSStream s => IMAPConnection s -> IO Integer
- flags :: BSStream s => IMAPConnection s -> IO [Flag]
- permanentFlags :: BSStream s => IMAPConnection s -> IO [Flag]
- isWritable :: BSStream s => IMAPConnection s -> IO Bool
- isFlagWritable :: BSStream s => IMAPConnection s -> IO Bool
- uidNext :: BSStream s => IMAPConnection s -> IO UID
- uidValidity :: BSStream s => IMAPConnection s -> IO UID
- stream :: BSStream s => IMAPConnection s -> s
- connectIMAP :: String -> IO (IMAPConnection Handle)
- connectIMAPPort :: String -> PortNumber -> IO (IMAPConnection Handle)
- connectStream :: BSStream s => s -> IO (IMAPConnection s)
- noop :: BSStream s => IMAPConnection s -> IO ()
- capability :: BSStream s => IMAPConnection s -> IO [String]
- logout :: BSStream s => IMAPConnection s -> IO ()
- login :: BSStream s => IMAPConnection s -> UserName -> Password -> IO ()
- authenticate :: BSStream s => IMAPConnection s -> AuthType -> UserName -> Password -> IO ()
- select :: BSStream s => IMAPConnection s -> Mailbox -> IO ()
- examine :: BSStream s => IMAPConnection s -> Mailbox -> IO ()
- create :: BSStream s => IMAPConnection s -> Mailbox -> IO ()
- delete :: BSStream s => IMAPConnection s -> Mailbox -> IO ()
- rename :: BSStream s => IMAPConnection s -> Mailbox -> Mailbox -> IO ()
- subscribe :: BSStream s => IMAPConnection s -> Mailbox -> IO ()
- unsubscribe :: BSStream s => IMAPConnection s -> Mailbox -> IO ()
- list :: BSStream s => IMAPConnection s -> IO [([Attribute], Mailbox)]
- lsub :: BSStream s => IMAPConnection s -> IO [([Attribute], Mailbox)]
- status :: BSStream s => IMAPConnection s -> Mailbox -> [MailboxStatus] -> IO [(MailboxStatus, Integer)]
- append :: BSStream s => IMAPConnection s -> Mailbox -> ByteString -> IO ()
- check :: BSStream s => IMAPConnection s -> IO ()
- close :: BSStream s => IMAPConnection s -> IO ()
- expunge :: BSStream s => IMAPConnection s -> IO [Integer]
- search :: BSStream s => IMAPConnection s -> [SearchQuery] -> IO [UID]
- store :: BSStream s => IMAPConnection s -> UID -> FlagsQuery -> IO ()
- copy :: BSStream s => IMAPConnection s -> UID -> Mailbox -> IO ()
- fetch :: BSStream s => IMAPConnection s -> UID -> IO ByteString
- fetchHeader :: BSStream s => IMAPConnection s -> UID -> IO ByteString
- fetchSize :: BSStream s => IMAPConnection s -> UID -> IO Int
- fetchHeaderFields :: BSStream s => IMAPConnection s -> UID -> [String] -> IO ByteString
- fetchHeaderFieldsNot :: BSStream s => IMAPConnection s -> UID -> [String] -> IO ByteString
- fetchFlags :: BSStream s => IMAPConnection s -> UID -> IO [Flag]
- fetchR :: BSStream s => IMAPConnection s -> (UID, UID) -> IO [(UID, ByteString)]
- fetchByString :: BSStream s => IMAPConnection s -> UID -> String -> IO [(String, String)]
- fetchByStringR :: BSStream s => IMAPConnection s -> (UID, UID) -> String -> IO [(UID, [(String, String)])]
- data Flag
- data Attribute
- data MailboxStatus
- = MESSAGES
- | RECENT
- | UIDNEXT
- | UIDVALIDITY
- data SearchQuery
- = ALLs
- | FLAG Flag
- | UNFLAG Flag
- | BCCs String
- | BEFOREs CalendarTime
- | BODYs String
- | CCs String
- | FROMs String
- | HEADERs String String
- | LARGERs Integer
- | NEWs
- | NOTs SearchQuery
- | OLDs
- | ONs CalendarTime
- | ORs SearchQuery SearchQuery
- | SENTBEFOREs CalendarTime
- | SENTONs CalendarTime
- | SENTSINCEs CalendarTime
- | SINCEs CalendarTime
- | SMALLERs Integer
- | SUBJECTs String
- | TEXTs String
- | TOs String
- | UIDs [UID]
- data FlagsQuery
- = ReplaceFlags [Flag]
- | PlusFlags [Flag]
- | MinusFlags [Flag]
connection type and corresponding actions
data BSStream s => IMAPConnection s Source
permanentFlags :: BSStream s => IMAPConnection s -> IO [Flag]Source
isWritable :: BSStream s => IMAPConnection s -> IO BoolSource
isFlagWritable :: BSStream s => IMAPConnection s -> IO BoolSource
uidValidity :: BSStream s => IMAPConnection s -> IO UIDSource
stream :: BSStream s => IMAPConnection s -> sSource
connectIMAP :: String -> IO (IMAPConnection Handle)Source
connectIMAPPort :: String -> PortNumber -> IO (IMAPConnection Handle)Source
connectStream :: BSStream s => s -> IO (IMAPConnection s)Source
IMAP commands
any state commands
capability :: BSStream s => IMAPConnection s -> IO [String]Source
not authenticated state commands
authenticate :: BSStream s => IMAPConnection s -> AuthType -> UserName -> Password -> IO ()Source
autenticated state commands
unsubscribe :: BSStream s => IMAPConnection s -> Mailbox -> IO ()Source
status :: BSStream s => IMAPConnection s -> Mailbox -> [MailboxStatus] -> IO [(MailboxStatus, Integer)]Source
append :: BSStream s => IMAPConnection s -> Mailbox -> ByteString -> IO ()Source
selected state commands
search :: BSStream s => IMAPConnection s -> [SearchQuery] -> IO [UID]Source
store :: BSStream s => IMAPConnection s -> UID -> FlagsQuery -> IO ()Source
fetch commands
fetch :: BSStream s => IMAPConnection s -> UID -> IO ByteStringSource
fetchHeader :: BSStream s => IMAPConnection s -> UID -> IO ByteStringSource
fetchHeaderFields :: BSStream s => IMAPConnection s -> UID -> [String] -> IO ByteStringSource
fetchHeaderFieldsNot :: BSStream s => IMAPConnection s -> UID -> [String] -> IO ByteStringSource
fetchFlags :: BSStream s => IMAPConnection s -> UID -> IO [Flag]Source
fetchR :: BSStream s => IMAPConnection s -> (UID, UID) -> IO [(UID, ByteString)]Source
fetchByString :: BSStream s => IMAPConnection s -> UID -> String -> IO [(String, String)]Source
fetchByStringR :: BSStream s => IMAPConnection s -> (UID, UID) -> String -> IO [(UID, [(String, String)])]Source
other types
data MailboxStatus Source
the query data type for the status command
MESSAGES | the number of messages in the mailbox |
RECENT | the number of messages with the Recent flag set |
UIDNEXT | the next unique identifier value of the mailbox |
UIDVALIDITY | the unique identifier validity value of the mailbox |
data SearchQuery Source
data FlagsQuery Source
ReplaceFlags [Flag] | |
PlusFlags [Flag] | |
MinusFlags [Flag] |