Major refactoring

This commit is contained in:
2015-05-19 19:16:20 +02:00
parent b143225af5
commit 1fbc4a1d74
45 changed files with 1447 additions and 444 deletions

View File

@ -17,6 +17,7 @@
package ch.dissem.bitmessage.networking;
import ch.dissem.bitmessage.BitmessageContext;
import ch.dissem.bitmessage.InternalContext;
import ch.dissem.bitmessage.entity.*;
import ch.dissem.bitmessage.entity.valueobject.InventoryVector;
import ch.dissem.bitmessage.entity.valueobject.NetworkAddress;
@ -43,7 +44,7 @@ import static ch.dissem.bitmessage.networking.Connection.State.*;
public class Connection implements Runnable {
private final static Logger LOG = LoggerFactory.getLogger(Connection.class);
private BitmessageContext ctx;
private InternalContext ctx;
private State state;
private Socket socket;
@ -59,7 +60,7 @@ public class Connection implements Runnable {
private Queue<MessagePayload> sendingQueue = new ConcurrentLinkedDeque<>();
public Connection(BitmessageContext context, State state, Socket socket, MessageListener listener) throws IOException {
public Connection(InternalContext context, State state, Socket socket, MessageListener listener) throws IOException {
this.ctx = context;
this.state = state;
this.socket = socket;
@ -161,12 +162,12 @@ public class Connection implements Runnable {
LOG.debug(e.getMessage(), e);
}
// It's probably pointless, but let the listener decide if we accept the message for the client.
listener.receive(objectMessage.getPayload());
listener.receive(objectMessage);
break;
case ADDR:
Addr addr = (Addr) messagePayload;
LOG.debug("Received " + addr.getAddresses().size() + " addresses.");
ctx.getAddressRepository().offerAddresses(addr.getAddresses());
ctx.getNodeRegistry().offerAddresses(addr.getAddresses());
break;
case VERACK:
case VERSION:
@ -175,7 +176,7 @@ public class Connection implements Runnable {
}
private void sendAddresses() {
List<NetworkAddress> addresses = ctx.getAddressRepository().getKnownAddresses(1000, streams);
List<NetworkAddress> addresses = ctx.getNodeRegistry().getKnownAddresses(1000, streams);
sendingQueue.offer(new Addr.Builder().addresses(addresses).build());
}

View File

@ -16,8 +16,8 @@
package ch.dissem.bitmessage.networking;
import ch.dissem.bitmessage.BitmessageContext;
import ch.dissem.bitmessage.BitmessageContext.ContextHolder;
import ch.dissem.bitmessage.InternalContext;
import ch.dissem.bitmessage.InternalContext.ContextHolder;
import ch.dissem.bitmessage.entity.valueobject.InventoryVector;
import ch.dissem.bitmessage.entity.valueobject.NetworkAddress;
import ch.dissem.bitmessage.ports.NetworkHandler;
@ -42,7 +42,7 @@ public class NetworkNode implements NetworkHandler, ContextHolder {
private final static Logger LOG = LoggerFactory.getLogger(NetworkNode.class);
private final ExecutorService pool;
private final List<Connection> connections = new LinkedList<>();
private BitmessageContext ctx;
private InternalContext ctx;
private ServerSocket serverSocket;
private Thread connectionManager;
@ -51,7 +51,7 @@ public class NetworkNode implements NetworkHandler, ContextHolder {
}
@Override
public void setContext(BitmessageContext context) {
public void setContext(InternalContext context) {
this.ctx = context;
}
@ -88,7 +88,7 @@ public class NetworkNode implements NetworkHandler, ContextHolder {
}
}
if (connections.size() < 1) {
List<NetworkAddress> addresses = ctx.getAddressRepository().getKnownAddresses(8, ctx.getStreams());
List<NetworkAddress> addresses = ctx.getNodeRegistry().getKnownAddresses(8, ctx.getStreams());
for (NetworkAddress address : addresses) {
try {
startConnection(new Connection(ctx, CLIENT, new Socket(address.toInetAddress(), address.getPort()), listener));