src/ztfy/utils/zodb.py
branchZTK-1.1
changeset 173 7164eb24f949
parent 171 0e8925323082
child 174 380f23a1587e
equal deleted inserted replaced
171:0e8925323082 173:7164eb24f949
    51     username = FieldProperty(IZEOConnection['username'])
    51     username = FieldProperty(IZEOConnection['username'])
    52     password = FieldProperty(IZEOConnection['password'])
    52     password = FieldProperty(IZEOConnection['password'])
    53     server_realm = FieldProperty(IZEOConnection['server_realm'])
    53     server_realm = FieldProperty(IZEOConnection['server_realm'])
    54 
    54 
    55     def getJSONSettings(self):
    55     def getJSONSettings(self):
    56         result = []
    56         result = {}
    57         for name in getFieldNames(IZEOConnection):
    57         for name in getFieldNames(IZEOConnection):
    58             result[name] = getattr(self, name)
    58             result[name] = getattr(self, name)
    59         return result
    59         return result
    60 
    60 
       
    61     def update(self, values):
       
    62         names = getFieldNames(IZEOConnection)
       
    63         for k, v in values.items():
       
    64             if k in names:
       
    65                 setattr(self, k, unicode(v) if isinstance(v, str) else v)
       
    66 
    61     def getConnection(self, wait=False, get_storage=False):
    67     def getConnection(self, wait=False, get_storage=False):
    62         """Get a tuple made of storage and DB connection for given settings"""
    68         """Get a tuple made of storage and DB connection for given settings"""
    63         storage = ClientStorage.ClientStorage((str(self.server_name), self.server_port),
    69         storage = ClientStorage.ClientStorage((str(self.server_name), self.server_port),
    64                                               storage=self.server_storage,
    70                                               storage=self.storage,
    65                                               username=self.server_username or '',
    71                                               username=self.username or '',
    66                                               password=self.server_password or '',
    72                                               password=self.password or '',
    67                                               realm=self.server_realm,
    73                                               realm=self.server_realm,
    68                                               wait=wait)
    74                                               wait=wait)
    69         db = DB(storage)
    75         db = DB(storage)
    70         return (storage, db) if get_storage else db
    76         return (storage, db) if get_storage else db
    71 
    77