protected TcpTransport( final Configuration configuration, final Executor bossPool, final Executor workerPool, final ThroughputCounter throughputCounter, final ConnectionCounter connectionCounter, final LocalMetricRegistry localRegistry) { super(configuration, throughputCounter, localRegistry, bossPool, workerPool, connectionCounter); final boolean nulDelimiter = configuration.getBoolean(CK_USE_NULL_DELIMITER); this.delimiter = nulDelimiter ? nulDelimiter() : lineDelimiter(); this.tcpKeepalive = configuration.getBoolean(CK_TCP_KEEPALIVE); this.maxFrameLength = configuration.getInt(CK_MAX_MESSAGE_SIZE, Config.DEFAULT_MAX_FRAME_LENGTH); }
@Override public ChannelPipeline getPipeline() throws Exception { ChannelBuffer[] delimiter; if (config.getBoolean(SyslogTCPInput.CK_USE_NULL_DELIMITER)) { delimiter = Delimiters.nulDelimiter(); } else { delimiter = Delimiters.lineDelimiter(); } ChannelPipeline p = Channels.pipeline(); p.addLast("connection-counter", connectionCounter); p.addLast("framer", new DelimiterBasedFrameDecoder(2 * 1024 * 1024, delimiter)); p.addLast("traffic-counter", throughputCounter); p.addLast("handler", new SyslogDispatcher(server, config, sourceInput)); return p; }