public static ChannelHandlerFactory newStringDecoder(Charset charset) { return new ShareableChannelHandlerFactory(new StringDecoder(charset)); }
public ChannelPipeline getPipeline() throws Exception { // Create a default pipeline implementation. ChannelPipeline pipeline = Channels.pipeline(); if (config.getAuthType() != Auth.PLAIN) { SSLEngine sslEngine = SSLContext.getDefault().createSSLEngine(); sslEngine.setUseClientMode(true); SslHandler sslHandler = new SslHandler(sslEngine); sslHandler.setEnableRenegotiation(true); pipeline.addLast("ssl", sslHandler); } pipeline.addLast("decoder", new StringDecoder()); pipeline.addLast("encoder", new StringEncoder()); // and then business logic. pipeline.addLast("handler", mailClientHandler); return pipeline; } }
@Override public ChannelPipeline getPipeline() throws Exception { SimpleChannelHandler handler = new SimpleChannelHandler() { AtomicBoolean sendingError = new AtomicBoolean(false); @Override public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws Exception { String line = (String) e.getMessage(); logger.debug("Client sent [{}]", line); Deque<String> commandLine = new LinkedList<>(); Collections.addAll(commandLine, line.split(" ")); new Handler(e, commandLine).handle(); e.getChannel().close(); } @Override public void exceptionCaught(ChannelHandlerContext ctx, ExceptionEvent e) throws Exception { if (e.getChannel().isOpen()) { if (sendingError.compareAndSet(false, true)) { e.getChannel().write(ChannelBuffers.copiedBuffer( "Error processing request: " + e.getCause().getMessage() + '\n', StandardCharsets.UTF_8)); sendingError.set(false); } e.getChannel().close(); } logger.error("Error", e.getCause()); } }; return Channels.pipeline(new DelimiterBasedFrameDecoder(80960, Delimiters.lineDelimiter()), new StringDecoder(CharsetUtil.UTF_8), handler); } });
public ChannelPipeline getPipeline() { ChannelPipeline p = Channels.pipeline(); p.addLast("encode", new StringEncoder()); p.addLast("decode", new StringDecoder()); p.addLast("handler", new ClientHandlerForClearOldConfig()); return p; } });
public ChannelPipeline getPipeline() { ChannelPipeline p = Channels.pipeline(); p.addLast("encode", new StringEncoder()); p.addLast("decode", new StringDecoder()); p.addLast("handler", new ClientHandlerForClearOldConfig()); return p; } });
public ChannelPipeline getPipeline() { ChannelPipeline p = Channels.pipeline(); p.addLast("encode",new StringEncoder()); p.addLast("decode",new StringDecoder()); p.addLast("handler",new ClientHandlerForSendNewConfig()); return p; } });
public ChannelPipeline getPipeline() throws Exception { ByteCounter byteCounter = new ByteCounter("--- CLIENT-COUNTER :: "); MessageCounter messageCounter = new MessageCounter("--- CLIENT-MSGCOUNTER :: "); ClientHandshakeHandler handshakeHandler = new ClientHandshakeHandler(id, serverId, 5000); return Channels.pipeline(byteCounter, frameDecoder, new StringDecoder(), new StringEncoder(), messageCounter, handshakeHandler, new ClientHandler(listener)); } });
@Override public ChannelPipeline getPipeline() throws Exception { ByteCounter counter = new ByteCounter("+++ SERVER-COUNTER :: "); MessageCounter messageCounter = new MessageCounter("+++ SERVER-MSGCOUNTER :: "); ServerHandshakeHandler handshakeHandler = new ServerHandshakeHandler(id, channelGroup, 5000); return Channels.pipeline(counter, delimiter, new StringDecoder(), new StringEncoder(), messageCounter, handshakeHandler, new ServerHandler(listener)); } });
public ChannelPipeline getPipeline() throws Exception { ChannelPipeline pipeline = Channels.pipeline(); pipeline.addLast("line", new DelimiterBasedFrameDecoder(Integer.MAX_VALUE, Delimiters.lineDelimiter())); pipeline.addLast("string", new StringDecoder()); pipeline.addLast("encoder", new HttpRequestEncoder()); pipeline.addLast("es-handler", clientHandler); return pipeline; } });
@Override protected void appendToPipeline(ChannelPipeline retval) { // Upstream handlers retval.addLast("frameDecoder", new DelimiterBasedFrameDecoder(1024, Delimiters.lineDelimiter())); retval.addLast("stringDecoder", new StringDecoder(CharsetUtil.UTF_8)); retval.addLast("multilineDecoder", new MultilineOrientedResponseDecoder()); // Downstream handlers retval.addLast("stringEncoder", new StringEncoder(CharsetUtil.UTF_8)); retval.addLast("lineEncoder", new LineOrientedRequestEncoder()); } }
@Override protected void appendToPipeline(ChannelPipeline retval) { // Upstream handlers retval.addLast("frameDecoder", new DelimiterBasedFrameDecoder(1024, Delimiters.lineDelimiter())); retval.addLast("stringDecoder", new StringDecoder(CharsetUtil.UTF_8)); retval.addLast("lineDecoder", new LineOrientedResponseDecoder()); // Downstream handlers retval.addLast("stringEncoder", new StringEncoder(CharsetUtil.UTF_8)); retval.addLast("lineEncoder", new LineOrientedRequestEncoder()); } }
@Override protected void appendToPipeline(ChannelPipeline retval) { // Upstream handlers retval.addLast("frameDecoder", new DelimiterBasedFrameDecoder(1024, Delimiters.lineDelimiter())); retval.addLast("stringDecoder", new StringDecoder(CharsetUtil.UTF_8)); retval.addLast("lineDecoder", new LineOrientedResponseDecoder()); // Downstream handlers retval.addLast("stringEncoder", new StringEncoder(CharsetUtil.UTF_8)); retval.addLast("lineEncoder", new LineOrientedRequestEncoder()); } }
@Override protected void appendToPipeline(ChannelPipeline retval) { // Upstream handlers retval.addLast("frameDecoder", new DelimiterBasedFrameDecoder(1024, Delimiters.lineDelimiter())); retval.addLast("stringDecoder", new StringDecoder(CharsetUtil.UTF_8)); retval.addLast("multilineDecoder", new MultilineOrientedResponseDecoder()); // Downstream handlers retval.addLast("stringEncoder", new StringEncoder(CharsetUtil.UTF_8)); retval.addLast("lineEncoder", new LineOrientedRequestEncoder()); } }
@Override public ChannelPipeline getPipeline() throws Exception { ChannelPipeline pipeline = Channels.pipeline(); pipeline.addLast("frameDecoder", new DelimiterBasedFrameDecoder(Integer.MAX_VALUE, Delimiters.lineDelimiter())); pipeline.addLast("decoder", new StringDecoder()); pipeline.addLast("encoder", new StringEncoder()); pipeline.addLast("messageDecoder", new GossipMessageDecoder()); pipeline.addLast("messageEncoder", new GossipMessageEncoder()); pipeline.addLast("handler", new GossipMessageHandler(cluster, disconnect)); return pipeline; }
@Override public ChannelPipeline getPipeline() throws Exception { // Create a default pipeline implementation. ChannelPipeline pipeline = pipeline(); // Add the text line codec combination first, pipeline.addLast("framer", new DelimiterBasedFrameDecoder(3000000, ChannelBuffers.wrappedBuffer(new byte[] {'E','O','F'}))); //pipeline.addLast("framer", new DelimiterBasedFrameDecoder(Integer.MAX_VALUE, // Delimiters.lineDelimiter())); //pipeline.addLast("eofFramer", new TextProtocolFrameDecoder()); pipeline.addLast("decoder", new StringDecoder()); pipeline.addLast("encoder", new StringEncoder()); // Insert OrderedMemoryAwareThreadPoolExecutor before your blocking handler pipeline.addLast("pipelineExecutor", new ExecutionHandler(this.eventExecutor)); // and then business logic. pipeline.addLast("handler", new TextProtocolHandler()); return pipeline; } }
@Override public ChannelPipeline getPipeline() throws Exception { ChannelPipeline pipeline = pipeline(); Encryption secure = getEncryption(); if (secure != null && !secure.isStartTLS()) { // We need to set clientMode to false. // See https://issues.apache.org/jira/browse/JAMES-1025 SSLEngine engine = secure.getContext().createSSLEngine(); engine.setUseClientMode(false); pipeline.addFirst(SSL_HANDLER, new SslHandler(engine)); } pipeline.addLast(GROUP_HANDLER, groupHandler); pipeline.addLast(CONNECTION_LIMIT_HANDLER, new ConnectionLimitUpstreamHandler(ManageSieveServer.this.connectionLimit)); pipeline.addLast(CONNECTION_LIMIT_PER_IP_HANDLER, new ConnectionPerIpLimitUpstreamHandler(ManageSieveServer.this.connPerIP)); // Add the text line decoder which limit the max line length, // don't strip the delimiter and use CRLF as delimiter // Use a SwitchableDelimiterBasedFrameDecoder, see JAMES-1436 pipeline.addLast(FRAMER, getFrameHandlerFactory().create(pipeline)); pipeline.addLast(CONNECTION_COUNT_HANDLER, getConnectionCountHandler()); pipeline.addLast(CHUNK_WRITE_HANDLER, new ChunkedWriteHandler()); ExecutionHandler ehandler = getExecutionHandler(); if (ehandler != null) { pipeline.addLast(EXECUTION_HANDLER, ehandler); } pipeline.addLast("stringDecoder", new StringDecoder(CharsetUtil.UTF_8)); pipeline.addLast(CORE_HANDLER, createCoreHandler()); pipeline.addLast("stringEncoder", new StringEncoder(CharsetUtil.UTF_8)); return pipeline; }