Search in sources :

Example 1 with ChannelManagerListener

use of com.firenio.component.ChannelManagerListener in project baseio by generallycloud.

the class TestLengthValueBroadcastServer method main.

public static void main(String[] args) throws Exception {
    final ChannelManagerListener channelManagerListener = new ChannelManagerListener();
    IoEventHandle eventHandleAdaptor = new IoEventHandle() {

        @Override
        public void accept(Channel ch, Frame frame) throws Exception {
            LengthValueFrame f = (LengthValueFrame) frame;
            frame.write("yes server already accept your message:", ch);
            frame.write(f.getStringContent(), ch);
            ch.writeAndFlush(f);
        }
    };
    ChannelAcceptor context = new ChannelAcceptor(8300);
    context.addChannelEventListener(new LoggerChannelOpenListener());
    context.addChannelEventListener(new SetOptionListener());
    context.addChannelEventListener(channelManagerListener);
    context.setIoEventHandle(eventHandleAdaptor);
    context.addProtocolCodec(new LengthValueCodec());
    context.bind();
    Util.exec(() -> {
        for (; ; ) {
            Util.sleep(1000);
            LengthValueFrame frame = new LengthValueFrame();
            frame.setContent("broadcast msg ........".getBytes());
            try {
                channelManagerListener.broadcast(frame);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    });
}
Also used : IoEventHandle(com.firenio.component.IoEventHandle) LengthValueCodec(com.firenio.codec.lengthvalue.LengthValueCodec) ChannelManagerListener(com.firenio.component.ChannelManagerListener) LengthValueFrame(com.firenio.codec.lengthvalue.LengthValueFrame) Frame(com.firenio.component.Frame) Channel(com.firenio.component.Channel) LengthValueFrame(com.firenio.codec.lengthvalue.LengthValueFrame) ChannelAcceptor(com.firenio.component.ChannelAcceptor) LoggerChannelOpenListener(com.firenio.component.LoggerChannelOpenListener)

Aggregations

LengthValueCodec (com.firenio.codec.lengthvalue.LengthValueCodec)1 LengthValueFrame (com.firenio.codec.lengthvalue.LengthValueFrame)1 Channel (com.firenio.component.Channel)1 ChannelAcceptor (com.firenio.component.ChannelAcceptor)1 ChannelManagerListener (com.firenio.component.ChannelManagerListener)1 Frame (com.firenio.component.Frame)1 IoEventHandle (com.firenio.component.IoEventHandle)1 LoggerChannelOpenListener (com.firenio.component.LoggerChannelOpenListener)1