QPID-8477: [Broker-J] Close sender on connection error only when state is AWAIT_OPEN

This closes #64

(cherry picked from commit b8542b075f188539f60c965f1fa13684bddcb772)
diff --git a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java
index 09c46d1..8fcd9e0 100644
--- a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java
+++ b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/AMQPConnection_1_0Impl.java
@@ -1164,6 +1164,7 @@
 
     private void closeConnection(final Error error)
     {
+        LOGGER.debug("Closing connection {} (state={}) due to {}", this, _connectionState, error);
         _closeCause = error.getDescription();
         Close close = new Close();
         close.setError(error);
@@ -1179,6 +1180,7 @@
                 sendOpen(0, 0);
                 sendClose(close);
                 _connectionState = ConnectionState.CLOSED;
+                getSender().close();
                 break;
             case OPENED:
                 sendClose(close);
@@ -1197,9 +1199,6 @@
             default:
                 throw new ServerScopedRuntimeException("Unknown state: " + _connectionState);
         }
-
-        getSender().close();
-
     }
 
     @Override