From: David ‘Bombe’ Roden Date: Fri, 15 Jan 2010 11:04:55 +0000 (+0100) Subject: Add possibility to simply wrap a high-level client around an FCP connection. X-Git-Tag: v0.1.4~1^2~26 X-Git-Url: https://git.pterodactylus.net/?p=jFCPlib.git;a=commitdiff_plain;h=ccd328332da86e58a98e991c3d4e31e56e906547 Add possibility to simply wrap a high-level client around an FCP connection. --- diff --git a/src/main/java/net/pterodactylus/fcp/highlevel/FcpClient.java b/src/main/java/net/pterodactylus/fcp/highlevel/FcpClient.java index 7399818..b738e26 100644 --- a/src/main/java/net/pterodactylus/fcp/highlevel/FcpClient.java +++ b/src/main/java/net/pterodactylus/fcp/highlevel/FcpClient.java @@ -147,7 +147,32 @@ public class FcpClient { * The Freenet node’s FCP port */ public FcpClient(InetAddress host, int port) { - fcpConnection = new FcpConnection(host, port); + this(new FcpConnection(host, port)); + } + + /** + * Creates a new high-level FCP client that will use the given connection. + * This constructor will assume that the FCP connection is already + * connected. + * + * @param fcpConnection + * The FCP connection to use + */ + public FcpClient(FcpConnection fcpConnection) { + this(fcpConnection, true); + } + + /** + * Creates a new high-level FCP client that will use the given connection. + * + * @param fcpConnection + * The FCP connection to use + * @param connected + * The initial status of the FCP connection + */ + public FcpClient(FcpConnection fcpConnection, boolean connected) { + this.fcpConnection = fcpConnection; + this.connected = connected; fcpConnection.addFcpListener(new FcpAdapter() { /** @@ -156,7 +181,7 @@ public class FcpClient { @Override @SuppressWarnings("synthetic-access") public void connectionClosed(FcpConnection fcpConnection, Throwable throwable) { - connected = false; + FcpClient.this.connected = false; fcpClientListenerManager.fireFcpClientDisconnected(); } });