Major refactoring
This commit is contained in:
@ -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());
|
||||
}
|
||||
|
||||
|
@ -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));
|
||||
|
Reference in New Issue
Block a user