Class ServerInitializer

java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
io.netty.channel.ChannelInitializer<io.netty.channel.socket.SocketChannel>
server.netty.ServerInitializer
All Implemented Interfaces:
io.netty.channel.ChannelHandler, io.netty.channel.ChannelInboundHandler

public class ServerInitializer extends io.netty.channel.ChannelInitializer<io.netty.channel.socket.SocketChannel>
Netty ChannelInitializer,為每個新的 TCP 連線組裝封包處理 pipeline。

當客戶端完成 TCP 握手後,initChannel(SocketChannel) 依序向 pipeline 加入:

ServerConnectionServerBootstrap.childHandler 中使用; ServerType 與頻道資訊在建構時注入,並透傳給 MapleServerHandler 以區分登入/頻道/商城伺服器的處理邏輯。

  • Nested Class Summary

    Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler

    io.netty.channel.ChannelHandler.Sharable
  • Constructor Summary

    Constructors
    Constructor
    Description
    ServerInitializer(int world, int channels, ServerType type)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    initChannel(io.netty.channel.socket.SocketChannel channel)
     

    Methods inherited from class io.netty.channel.ChannelInitializer

    channelRegistered, exceptionCaught, handlerAdded, handlerRemoved

    Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter

    channelActive, channelInactive, channelRead, channelReadComplete, channelUnregistered, channelWritabilityChanged, userEventTriggered

    Methods inherited from class io.netty.channel.ChannelHandlerAdapter

    ensureNotSharable, isSharable

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ServerInitializer

      public ServerInitializer(int world, int channels, ServerType type)
  • Method Details

    • initChannel

      protected void initChannel(io.netty.channel.socket.SocketChannel channel) throws Exception
      Specified by:
      initChannel in class io.netty.channel.ChannelInitializer<io.netty.channel.socket.SocketChannel>
      Throws:
      Exception