Client connection may be closed before flushing end of stream stanza
Description
By default write operations in MINA are asynchronous and closing a socket connection does not wait for queued packets to be flushed. We need to make the NIOConnection#close() synchronous so that the </stream:stream> gets actually delivered before closing the socket.
By default write operations in MINA are asynchronous and closing a socket connection does not wait for queued packets to be flushed. We need to make the NIOConnection#close() synchronous so that the </stream:stream> gets actually delivered before closing the socket.