imm-0.6.0.3: Retrieve RSS/Atom feeds and write one mail per new item in a maildir.

Safe HaskellNone

Imm.Feed

Synopsis

Documentation

data Action Source

Instances

Eq Action 
Show Action 

class FeedParser m whereSource

Methods

parseDate :: String -> m (Maybe UTCTime)Source

Instances

Monad m => FeedParser (ReaderT Config m) 
(Monad m, Error e, FeedParser m) => FeedParser (ErrorT e m) 

showType :: Feed -> StringSource

Provide a String representation of the feed type.

describe :: Feed -> StringSource

parse :: MonadError ImmError m => String -> m FeedSource

Monad-agnostic version of parseFeedString

download :: (Decoder m, MonadBase IO m, MonadError ImmError m) => URI -> m ImmFeedSource

Retrieve, decode and parse the given resource as a feed.

check :: (FeedParser m, DatabaseReader m, MonadBase IO m, MonadError ImmError m) => ImmFeed -> m ()Source

Count the list of unread items for given feed.

markAsRead :: (MonadBase IO m, MonadError ImmError m, DatabaseWriter m) => URI -> m ()Source

Simply set the last check time to now.

markAsUnread :: (MonadBase IO m, MonadError ImmError m, DatabaseWriter m) => URI -> m ()Source

Simply remove the state file.

showStatus :: (DatabaseReader m, MonadBase IO m) => URI -> m StringSource

Return a String describing the last update for a given feed.

getItemContent :: Item -> StringSource

This function is missing from Query, probably because it is difficult to define where the content is located in a generic way for AtomRSS 1.xRSS 2.x feeds.

getDate :: (FeedParser m, Monad m, MonadError ImmError m) => Item -> m UTCTimeSource