From ea6beac0114cc751a30d324522869562b2db4eb7 Mon Sep 17 00:00:00 2001 From: akwizgran Date: Fri, 7 Oct 2011 13:17:13 +0100 Subject: [PATCH] Plugin refactoring. --- .../plugins/socket/SimpleSocketPlugin.java | 6 ++--- .../sf/briar/plugins/socket/SocketPlugin.java | 24 +++++++++---------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/components/net/sf/briar/plugins/socket/SimpleSocketPlugin.java b/components/net/sf/briar/plugins/socket/SimpleSocketPlugin.java index 7f5e915be..4a11437b7 100644 --- a/components/net/sf/briar/plugins/socket/SimpleSocketPlugin.java +++ b/components/net/sf/briar/plugins/socket/SimpleSocketPlugin.java @@ -39,13 +39,13 @@ class SimpleSocketPlugin extends SocketPlugin { @Override protected SocketAddress getLocalSocketAddress() { - assert started && localProperties != null; + assert started; return createSocketAddress(localProperties); } @Override protected SocketAddress getSocketAddress(ContactId c) { - assert started && remoteProperties != null; + assert started; Map properties = remoteProperties.get(c); if(properties == null) return null; return createSocketAddress(properties); @@ -67,7 +67,7 @@ class SimpleSocketPlugin extends SocketPlugin { @Override protected void setLocalSocketAddress(SocketAddress s) { - assert started && localProperties != null; + assert started; if(!(s instanceof InetSocketAddress)) throw new IllegalArgumentException(); InetSocketAddress i = (InetSocketAddress) s; diff --git a/components/net/sf/briar/plugins/socket/SocketPlugin.java b/components/net/sf/briar/plugins/socket/SocketPlugin.java index 720a04965..d790210f9 100644 --- a/components/net/sf/briar/plugins/socket/SocketPlugin.java +++ b/components/net/sf/briar/plugins/socket/SocketPlugin.java @@ -66,7 +66,14 @@ implements StreamTransportPlugin { return; } synchronized(this) { - if(!started) return; + if(!started) { + try { + ss.close(); + } catch(IOException e) { + // FIXME: Logging + } + return; + } socket = ss; setLocalSocketAddress(ss.getLocalSocketAddress()); startListener(); @@ -151,13 +158,13 @@ implements StreamTransportPlugin { private Runnable createConnector(final ContactId c) { return new Runnable() { public void run() { - connect(c); + connectAndCallBack(c); } }; } - private void connect(ContactId c) { - StreamTransportConnection conn = createAndConnectSocket(c); + private void connectAndCallBack(ContactId c) { + StreamTransportConnection conn = createConnection(c); if(conn != null) { synchronized(this) { if(started) callback.outgoingConnectionCreated(c, conn); @@ -165,7 +172,7 @@ implements StreamTransportPlugin { } } - private StreamTransportConnection createAndConnectSocket(ContactId c) { + public StreamTransportConnection createConnection(ContactId c) { SocketAddress addr; Socket s; try { @@ -181,11 +188,4 @@ implements StreamTransportPlugin { } return new SocketTransportConnection(s); } - - public StreamTransportConnection createConnection(ContactId c) { - synchronized(this) { - if(!started) return null; - } - return createAndConnectSocket(c); - } }