@Override public Connection newConnection(Connector connector, EndPoint endPoint) { CompressionFactory compressionFactory = new StandardCompressionFactory(); Parser parser = new Parser(compressionFactory.newDecompressor()); Generator generator = new Generator(connector.getByteBufferPool(), compressionFactory.newCompressor()); ServerSessionFrameListener listener = provideServerSessionFrameListener(connector, endPoint); SPDYConnection connection = new ServerSPDYConnection(connector, endPoint, parser, listener, isDispatchIO(), getInputBufferSize()); FlowControlStrategy flowControlStrategy = newFlowControlStrategy(version); StandardSession session = new StandardSession(getVersion(), connector.getByteBufferPool(), connector.getScheduler(), connection, endPoint, connection, 2, listener, generator, flowControlStrategy); session.setWindowSize(getInitialWindowSize()); parser.addListener(session); connection.setSession(session); sessionOpened(session); return configure(connection, connector, endPoint); }