示例#1
0
    def soap_getPublicKeys(self, ps, **kw):
        self._init_db()
        request, response = NumbexServiceService.soap_getPublicKeys(self, ps, **kw)
        pubkeys = self.db.get_public_keys_ids(request._parameter)

        ret = ['id = %s\n%s'%(i, k) for i, k in pubkeys]
        response._return = '\n'.join(ret)
        return request, response
示例#2
0
 def soap_getData(self, ps, **kw):
     # Call the generated base class method to get appropriate
     # input/output data structures
     self._init_db()
     request, response = NumbexServiceService.soap_getData(self, ps, **kw)
     data = self._transform_to_csv(self.db.get_data_all())
     response._return = data
     return request, response
示例#3
0
 def soap_receiveUpdates(self, ps, **kw):
     self._init_db()
     request, response = NumbexServiceService.soap_receiveUpdates(self, ps, **kw)
     data = request._csv
     # check validity of DSA signatures
     l = list(csv.reader(StringIO(data)))
     if not self.db.check_data_signatures(l):
         raise ValueError('signatures invalid')
     retval = self.db.update_data(l)
     response._return = retval
     return request, response
示例#4
0
 def soap_receivePublicKey(self, ps, **kw):
     self._init_db()
     request, response = NumbexServiceService.soap_receivePublicKey(self, ps, **kw)
     owner = request._owner
     pubkeystr = request._pubkey
     pubkey = crypto.parse_pub_key(pubkeystr)
     if not pubkey.check_key():
         response._return = False
     else:
         response._return = True
         self.db.add_public_key(owner, pubkeystr)
     return request, response
示例#5
0
 def soap_receiveUpdates(self, ps, **kw):
     request, response = NumbexServiceService.soap_receiveUpdates(self, ps, **kw)
     data = request._csv
     print data
     respons._return = True
     return request, response
示例#6
0
 def soap_getUpdates(self, ps, **kw):
     request, response = NumbexServiceService.soap_getUpdates(self, ps, **kw)
     since = datetime.fromtimestamp(time.mktime(request._parameter))
     response._return = "quux"
     return request, response
示例#7
0
 def soap_getData(self, ps, **kw):
     # Call the generated base class method to get appropriate
     # input/output data structures
     request, response = NumbexServiceService.soap_getData(self, ps, **kw)
     response._return = "foobar";
     return request, response
示例#8
0
 def soap_removePublicKey(self, ps, **kw):
     self._init_db()
     request, response = NumbexServiceService.soap_removePublicKey(self, ps, **kw)
     self.db.remove_public_key(request._parameter)
     response._return = True
     return request, response
示例#9
0
 def soap_getUnsigned(self, ps, **kw):
     self._init_db()
     request, response = NumbexServiceService.soap_getUnsigned(self, ps, **kw)
     response._return = self._transform_to_csv(self.db.get_data_unsigned())
     return request, response
示例#10
0
 def soap_getUpdates(self, ps, **kw):
     self._init_db()
     request, response = NumbexServiceService.soap_getUpdates(self, ps, **kw)
     since = datetime.fromtimestamp(time.mktime(request._parameter))
     response._return = self._transform_to_csv(self.db.get_data_since(since))
     return request, response
示例#11
0
 def __init__(self, dbfile="tmp.db", *args, **kwargs):
     NumbexServiceService.__init__(self, *args, **kwargs)
     self.dbfile = dbfile
     self.db = None