public Server( T requestTarget, Configuration config, LogProvider logProvider, int frameLength,
ProtocolVersion protocolVersion, TxChecksumVerifier txVerifier, Clock clock, ByteCounterMonitor
byteCounterMonitor, RequestMonitor requestMonitor )
{
this.requestTarget = requestTarget;
this.config = config;
this.frameLength = frameLength;
this.applicationProtocolVersion = protocolVersion.getApplicationProtocol();
this.logProvider = logProvider;
this.msgLog = this.logProvider.getLog( getClass() );
this.txVerifier = txVerifier;
this.byteCounterMonitor = byteCounterMonitor;
this.requestMonitor = requestMonitor;
this.connectedSlaveChannels = new IdleChannelReaper( this, logProvider, clock, config.getOldChannelThreshold() );
this.chunkSize = config.getChunkSize();
assertChunkSizeIsWithinFrameSize( chunkSize, frameLength );
}