implemented sendStore, only one problem with casting Identifier to FileIdentifier, look at TODO in UDPHandler
This commit is contained in:
parent
8fca6bbec2
commit
ab8030bd71
@ -125,7 +125,7 @@ public class Node {
|
||||
}
|
||||
}
|
||||
|
||||
void sendFindValue(NodeIdentifier receiver, Identifier idToFind) {
|
||||
void sendFindValue(NodeIdentifier receiver, FileIdentifier idToFind) {
|
||||
boolean successful = send(receiver, MessageType.FIND_VALUE,
|
||||
idToFind.getBytes(), true, null);
|
||||
|
||||
@ -172,6 +172,15 @@ public class Node {
|
||||
new Object[] { closeNodes.size(), receiver, idToFind, rpcID });
|
||||
}
|
||||
}
|
||||
|
||||
public void sendStore(NodeIdentifier receiver, FileIdentifier fileID) {
|
||||
boolean successful = send(receiver, MessageType.STORE, fileID.getBytes(), true, null);
|
||||
|
||||
if (successful) {
|
||||
LOGGER.log(Level.INFO, "Sending [STORE {0}] to node {1}",
|
||||
new Object[] { fileID, receiver });
|
||||
}
|
||||
}
|
||||
|
||||
public void sendPing(NodeIdentifier receiver, MessageCallback cb) {
|
||||
boolean successful = send(receiver, MessageType.PING, null, true, cb);
|
||||
@ -305,6 +314,8 @@ public class Node {
|
||||
}
|
||||
|
||||
public void StorePair(FileIdentifier key, NodeIdentifier id) {
|
||||
System.out.println("Key: " + key.getKey());
|
||||
System.out.println("Node: " + id.getAddress());
|
||||
values.put(key, id);
|
||||
}
|
||||
|
||||
|
||||
@ -130,6 +130,7 @@ public class UDPHandler implements Runnable {
|
||||
break;
|
||||
case MessageType.STORE:
|
||||
//TODO implemnt
|
||||
receiveStore(fromID, rpcID);
|
||||
LOGGER.log(Level.INFO, "Received STORE from {0}",
|
||||
new Object[] { from.toString() });
|
||||
break;
|
||||
@ -213,6 +214,14 @@ public class UDPHandler implements Runnable {
|
||||
|
||||
node.sendClosestNodesTo(fromID, idToFind, rpc_id);
|
||||
}
|
||||
|
||||
private void receiveStore(NodeIdentifier fromID, Identifier rpc_id) {
|
||||
//TODO Cast geht an dieser stelle nicht, getIDFromBuffer() müsste man für
|
||||
// FileID implementieren.
|
||||
FileIdentifier fileID = (FileIdentifier) getIDFromBuffer();
|
||||
|
||||
node.StorePair(fileID, fromID);
|
||||
}
|
||||
|
||||
public void terminate() {
|
||||
running = false;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user