~sil/desktopcouch/write-replication-status

« back to all changes in this revision

Viewing changes to desktopcouch/records/server.py

  • Committer: Tarmac
  • Author(s): eric.casteleijn at canonical
  • Date: 2009-09-11 21:46:35 UTC
  • mfrom: (58.1.1 configurable-server-class)
  • Revision ID: bzrdev@chad.org-20090911214635-hp2q3ueigl004gab
make the server class configurable, since we need different OAuthCapable servers on desktop and cloud.

Show diffs side-by-side

added added

removed removed

Lines of Context:
58
58
class CouchDatabase(object):
59
59
    """An small records specific abstraction over a couch db database."""
60
60
 
61
 
    def __init__(self, database, uri=None, record_factory=None, create=False):
 
61
    def __init__(self, database, uri=None, record_factory=None, create=False,
 
62
                 server_class=Server):
62
63
        if not uri:
63
64
            desktopcouch.find_pid()
64
65
            port = desktopcouch.find_port()
65
66
            self.server_uri = "http://localhost:%s" % port
66
67
        else:
67
68
            self.server_uri = uri
68
 
        self._server = Server(self.server_uri)
 
69
        self._server = server_class(self.server_uri)
69
70
        if database not in self._server:
70
71
            if create:
71
72
                self._server.create(database)