当前位置: 首页>>代码示例>>Java>>正文


Java ChannelHandlerContext.fireChannelRegistered方法代码示例

本文整理汇总了Java中io.netty.channel.ChannelHandlerContext.fireChannelRegistered方法的典型用法代码示例。如果您正苦于以下问题:Java ChannelHandlerContext.fireChannelRegistered方法的具体用法?Java ChannelHandlerContext.fireChannelRegistered怎么用?Java ChannelHandlerContext.fireChannelRegistered使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在io.netty.channel.ChannelHandlerContext的用法示例。


在下文中一共展示了ChannelHandlerContext.fireChannelRegistered方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: fixHandlerBeforeConnect

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
/**
	 * 适配
	 */
	@Override
	protected ChannelHandler fixHandlerBeforeConnect(final ChannelHandler handler) {
		ChannelHandler result=new ShareableChannelInboundHandler() {
			@Override
			public void channelRegistered(ChannelHandlerContext ctx) throws Exception {
				Channel ch=ctx.channel();
				ch.pipeline().addLast(new HttpClientCodec());
            	ch.pipeline().addLast(new HttpObjectAggregator(64*1024));
            	ch.pipeline().addLast(new WebSocketClientProtocolHandler(WebSocketClientHandshakerFactory.newHandshaker(uri, WebSocketVersion.V13, null, false, new DefaultHttpHeaders())));
            	ch.pipeline().addLast(new WebSocketConnectedClientHandler(handler));
				ctx.pipeline().remove(this);//移除当前handler
				ctx.fireChannelRegistered();//重新从第一个handler抛出事件
			}
		};
//		ChannelInitializer<SocketChannel> result=new ChannelInitializer<SocketChannel>() {
//            @Override
//            protected void initChannel(SocketChannel ch) {
//            	ch.pipeline().addLast(new HttpClientCodec());
//            	ch.pipeline().addLast(new HttpObjectAggregator(64*1024));
//            	ch.pipeline().addLast(new WebSocketClientProtocolHandler(WebSocketClientHandshakerFactory.newHandshaker(uri, WebSocketVersion.V13, null, false, new DefaultHttpHeaders())));
//            	ch.pipeline().addLast(new WebSocketConnectedClientHandler(handler));
//            }
//        };
        return result;
	}
 
开发者ID:juebanlin,项目名称:util4j,代码行数:29,代码来源:NettyBinaryWebSocketClient.java

示例2: webSocketHandComplete

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
@Override
protected void webSocketHandComplete(ChannelHandlerContext ctx) {
	ctx.channel().pipeline().addLast(new WebSocketTextFrameByteBufAdapter());//适配器
	ctx.channel().pipeline().addLast(handler);
	//为新加的handler手动触发必要事件
	ctx.fireChannelRegistered();
	ctx.fireChannelActive();
}
 
开发者ID:juebanlin,项目名称:util4j,代码行数:9,代码来源:WebSocketServerTextAdapterHandler.java

示例3: webSocketHandComplete

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
@Override
protected void webSocketHandComplete(ChannelHandlerContext ctx) {
	ctx.channel().pipeline().addLast(new WebSocketBinaryFrameByteBufAdapter());//适配器
	ctx.channel().pipeline().addLast(handler);
	//为新加的handler手动触发必要事件
	ctx.fireChannelRegistered();
	ctx.fireChannelActive();
}
 
开发者ID:juebanlin,项目名称:util4j,代码行数:9,代码来源:WebSocketClientBinaryAdapterHandler.java

示例4: channelInitFix

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
/**
 * 包装一个初始化父类channel的handler
 * @param handler 业务handler
 * @return
 */
private ChannelHandler channelInitFix(final ChannelHandler handler)
{
	ChannelHandler fixedHandler=new ShareableChannelInboundHandler() {
		@Override
		public void channelRegistered(ChannelHandlerContext ctx) throws Exception {
			Channel ch=ctx.channel();
			setChannel(ch);
			ctx.pipeline().addLast(handler);
			ctx.pipeline().remove(this);//移除当前handler
			ctx.fireChannelRegistered();//从当前handler往后抛出事件
		}
	};
	return fixedHandler;
}
 
开发者ID:juebanlin,项目名称:util4j,代码行数:20,代码来源:NettyClient.java

示例5: userEventTriggered

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt)
		throws Exception {
	if (evt == WebSocketClientProtocolHandler.ClientHandshakeStateEvent.HANDSHAKE_COMPLETE) {
		log.log(logLevel,"WebSocket:HANDSHAKE_COMPLETE,pipeline:"+ctx.channel().pipeline().toMap().toString());
		ctx.pipeline().addLast(new WebSocketTextFrameByteBufAdapter());//适配器
		ctx.pipeline().addLast(this.handler);//业务层handler
		//为新加的handler手动触发必要事件
		ctx.fireChannelRegistered();
		ctx.fireChannelActive();
		log.log(logLevel,"HANDSHAKE_COMPLETED HANDLERS:"+ctx.channel().pipeline().toMap().toString());
	}
	super.userEventTriggered(ctx, evt);
}
 
开发者ID:juebanlin,项目名称:util4j,代码行数:15,代码来源:NettyTextWebSocketClient.java

示例6: userEventTriggered

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
@Override
public void userEventTriggered(ChannelHandlerContext ctx, Object evt)
		throws Exception {
	if (evt == WebSocketClientProtocolHandler.ClientHandshakeStateEvent.HANDSHAKE_COMPLETE) {
		log.log(logLevel,"WebSocket:HANDSHAKE_COMPLETE,pipeline:"+ctx.channel().pipeline().toMap().toString());
		ctx.pipeline().addLast(new WebSocketBinaryFrameByteBufAdapter());//适配器
		ctx.pipeline().addLast(this.handler);//业务层handler
		//为新加的handler手动触发必要事件
		ctx.fireChannelRegistered();
		ctx.fireChannelActive();
		log.log(logLevel,"HANDSHAKE_COMPLETED HANDLERS:"+ctx.channel().pipeline().toMap().toString());
	}
	super.userEventTriggered(ctx, evt);
}
 
开发者ID:juebanlin,项目名称:util4j,代码行数:15,代码来源:NettyBinaryWebSocketClient.java

示例7: initLogHandlerAdapter

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
/**
	 * 初始化handler适配包装
	 * @param init
	 * @return
	 */
	protected ChannelHandler initLogHandlerAdapter(ChannelHandler init)
	{
		ChannelHandler handler=new  ShareableChannelInboundHandler() {
			@Override
			public void channelRegistered(ChannelHandlerContext ctx) throws Exception {
				Channel ch=ctx.channel();
				manageChannel(ch);
				LogLevel level=config.getChannelLevel();
				if(level!=null)
				{//单个链路的日志记录器
					ch.pipeline().addLast(new LoggerHandler(level));
				}
				ch.pipeline().addLast(init);
				ctx.pipeline().remove(this);//移除当前handler
				ctx.fireChannelRegistered();//从当前handler往后抛出事件
			}
		};
//		ChannelHandler handler=new ChannelInitializer<Channel>() {
//			@Override
//			protected void initChannel(Channel ch) throws Exception {
//				channelGroup.add(ch);
//				LogLevel level=config.getLevel();
//				if(level!=null)
//				{
//					ch.pipeline().addLast(new LoggerHandler(config.getLevel()));
//				}
//				ch.pipeline().addLast(init);
//			}
//		};
		return handler;
	}
 
开发者ID:juebanlin,项目名称:util4j,代码行数:37,代码来源:NettyServer.java

示例8: channelRegistered

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
@Override
public void channelRegistered(ChannelHandlerContext ctx) throws Exception {
    ctx.fireChannelRegistered();
}
 
开发者ID:recklessMo,项目名称:nettyRpc,代码行数:5,代码来源:BusinessServerHandler.java

示例9: initHandlerAdapter

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
/**
	 * 初始化handler适配包装
	 * @param init
	 * @return
	 */
	protected ChannelHandler initHandlerAdapter(ChannelHandler init)
	{
		ChannelHandler handler=new ShareableChannelInboundHandler() {
			@Override
			public void channelRegistered(ChannelHandlerContext ctx) throws Exception {
				Channel ch=ctx.channel();
				LogLevel level=getLevel();
				if(level!=null)
				{
					ch.pipeline().addLast(new LoggerHandler(level));
				}
				ch.pipeline().addLast(init);
				ctx.pipeline().remove(this);//移除当前handler
				ctx.fireChannelRegistered();//从当前handler往后抛出事件
			}
		};
//		ChannelHandler handler=new ChannelInitializer<Channel>() {
//			@Override
//			protected void initChannel(Channel ch) throws Exception {
//				LogLevel level=getLevel();
//				if(level!=null)
//				{
//					ch.pipeline().addLast(new LoggerHandler(level));
//				}
//				ch.pipeline().addLast(init);
//			}
//		};
		/*
		 * 如果init里面后续有ChannelInitializer则会触发2次channelRegistered
		 * 导致LoggerHandler会打印2次channelRegistered无法避免,触发玩家自己的init不使用ChannelInitializer
		ChannelInboundHandlerAdapter handler=new ChannelInboundHandlerAdapter(){
			@Override
			public void channelRegistered(ChannelHandlerContext ctx) throws Exception {
				ctx.pipeline().addLast(new LoggerHandler(getLevel()));
				ctx.pipeline().addLast(init);
				ctx.pipeline().remove(this);
				super.channelRegistered(ctx);
				
			}
		};
		 */
		return handler;
	}
 
开发者ID:juebanlin,项目名称:util4j,代码行数:49,代码来源:NettyClientConfig.java

示例10: channelRegistered

import io.netty.channel.ChannelHandlerContext; //导入方法依赖的package包/类
@Override
public void channelRegistered(ChannelHandlerContext ctx) {
    log(() -> format(ctx, "CHANNEL_REGISTERED"));
    ctx.fireChannelRegistered();
}
 
开发者ID:aws,项目名称:aws-sdk-java-v2,代码行数:6,代码来源:LoggingHandler.java


注:本文中的io.netty.channel.ChannelHandlerContext.fireChannelRegistered方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。