X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=apt_dht_Khashmir%2Fknode.py;h=fd6214ccbd5cd418b566d317003a944c706b80b6;hb=e1b99a7d84fce8e84e3a6c30fd40db18b4f0b5ad;hp=1e0b299cd6cdd90b6669ef76fcbc464dfdea3162;hpb=7dab2471d589ea439ccbfe794258863c2af858e9;p=quix0rs-apt-p2p.git diff --git a/apt_dht_Khashmir/knode.py b/apt_dht_Khashmir/knode.py index 1e0b299..fd6214c 100644 --- a/apt_dht_Khashmir/knode.py +++ b/apt_dht_Khashmir/knode.py @@ -1,6 +1,8 @@ ## Copyright 2002-2004 Andrew Loewenstern, All Rights Reserved # see LICENSE.txt for license information +from twisted.python import log + from node import Node, NULL_ID class KNodeBase(Node): @@ -8,17 +10,17 @@ class KNodeBase(Node): try: senderid = dict['rsp']['id'] except KeyError: - print ">>>> No peer id in response" + log.msg("No peer id in response") raise Exception, "No peer id in response." else: if self.id != NULL_ID and senderid != self.id: - print "Got response from different node than expected." + log.msg("Got response from different node than expected.") self.table.invalidateNode(self) return dict def errBack(self, err): - print ">>> ", err + log.err(err) return err def ping(self, id): @@ -26,6 +28,13 @@ class KNodeBase(Node): df.addErrback(self.errBack) df.addCallback(self.checkSender) return df + + def join(self, id): + df = self.conn.sendRequest('join', {"id":id}) + df.addErrback(self.errBack) + df.addCallback(self.checkSender) + return df + def findNode(self, target, id): df = self.conn.sendRequest('find_node', {"target" : target, "id": id}) df.addErrback(self.errBack) @@ -40,13 +49,8 @@ class KNodeRead(KNodeBase): return df class KNodeWrite(KNodeRead): - def storeValue(self, key, value, id): - df = self.conn.sendRequest('store_value', {"key" : key, "value" : value, "id": id}) - df.addErrback(self.errBack) - df.addCallback(self.checkSender) - return df - def storeValues(self, key, value, id): - df = self.conn.sendRequest('store_values', {"key" : key, "values" : value, "id": id}) + def storeValue(self, key, value, originated, id): + df = self.conn.sendRequest('store_value', {"key" : key, "value" : value, "originated" : originated, "id": id}) df.addErrback(self.errBack) df.addCallback(self.checkSender) return df