docs: public void close() {
          lock.lock();
          try {
              if (connectionOpen && !channelSettling) {
                  final Protos.TwoWayChannelMessage.Builder msg = Protos.TwoWayChannelMessage.newBuilder();
                  msg.setType(Protos.TwoWayChannelMessage.MessageType.CLOSE);
                  conn.sendToClient(msg.build());
                  conn.destroyConnection(CloseReason.SERVER_REQUESTED_CLOSE);
              }
          } finally {
              lock.unlock();
          }
      }