Queue queue = psession.encOut.getBufferQueue();
encoder.encode( psession, message, psession.encOut );
for( ;; )
{
ByteBuffer buf = ( ByteBuffer ) queue.pop();
if( buf == null )
break;
// use marker only if it is the last ByteBuffer
Object marker = queue.isEmpty() ? message : null;
session.write( buf, marker );