import RssAtomFeed
import ImapFeed

FEED_SOURCES = [RssAtomFeed, ImapFeed]

FEED_INFO = {}

def _filenameForFeed( name ):
    # TODO: This should be more robust and deal with weird characters
    # better.  It should also be a one-to-one mapping from feed names
    # to filenames.
    return "feed-%s.rss" % name

for feedSource in FEED_SOURCES:
    for feed in feedSource.getFeedInfo():
        key = feed["name"]
        feed["filename"] = _filenameForFeed( key )
        feed["source"] = feedSource
        assert key not in FEED_INFO
        FEED_INFO[key] = feed
del feed
del feedSource

if __name__ == "__main__":
    import sys
    name = sys.argv[1]
    feed = FEED_INFO[name]
    source = feed["source"]
    source.update( feed )
