private final Object writerQueueEmpty = new Object();
SocketConnection(final SocketTransport transport, final Socket adoptSocket, final Reader reader, final OutputStream outputStream) {
packetSerializer = transport.packetSerializer;
socket = adoptSocket;
final Session session;
try {
session = transport.setup.createSession(this);
} catch (final Exception e) {
SocketListener.close(adoptSocket, e);
transport.createSessionExceptionHandler.uncaughtException(Thread.currentThread(), e);