code: public Future<Boolean> connect(InetSocketAddress remoteAddr)
  			throws IOException {
  		if (remoteAddr == null) {
  			throw new NullPointerException("Null Address");
  		}
  		SocketChannel socketChannel = SocketChannel.open();
  		this.configureSocketChannel(socketChannel);
  		ConnectFuture future = new ConnectFuture(remoteAddr);
  		try {
  		    if (!socketChannel.connect(remoteAddr)) {
  		        this.selectorManager.registerChannel(socketChannel,
  		            SelectionKey.OP_CONNECT, future);
  		    } else {
  		        this.createSession(socketChannel);
  		        future.setResult(true);
  		    }
  		    return future;
  		 }
  		catch (IOException e) {
  		    if (socketChannel != null) {
  		        socketChannel.close();
  		    }
  		    throw e;
  		}
  	}
docs: /*
  (non-Javadoc)
  
  @seecom.google.code.hs4j.network.hs.HandlerCOnnector#connect(java.net.
  InetSocketAddress)