view backend/couchdb/Preferences.py @ 146:8ec20377bcb0

move getting the entries for a feed to the backend so that the couchdb backend can use a custom view for feed entries
author Dirk Olmes <dirk@xanthippe.ping.de>
date Thu, 25 Aug 2011 07:01:45 +0200
parents 9e1e6b96d8b0
children 2d159eb2a91b
line wrap: on
line source


class Preferences(object):
    def __init__(self, database):
        self.database = database
        self.viewResults = self.database.view("feedtest/preference_by_key")

    def _valueForKey(self, key):
        try:
            resultsForKey = self.viewResults[key]
            row = iter(resultsForKey).next()
            return row.value["value"]
        except StopIteration:
            return None

    def isProxyConfigured(self):
        return self.proxyHost() is not None

    def proxyHost(self):
        return self._valueForKey("proxyHost")

    def proxyPort(self):
        return self._valueForKey("proxyPort")

    def showOnlyUnreadFeeds(self):
        return self._valueForKey("showOnlyUnreadFeeds")

    def startMaximized(self):
        return self._valueForKey("startMaximized")

    def hideReadFeedEntries(self):
        return self._valueForKey("hideReadFeedEntries")