code: @SuppressWarnings({ "unchecked", "deprecation" })
      public B channelFactory(io.netty.channel.ChannelFactory<? extends C> channelFactory) {
          return channelFactory((ChannelFactory<C>) channelFactory);
      }
docs: {@link io.netty.channel.ChannelFactory} which is used to create {@link Channel} instances from
  when calling {@link #bind()}. This method is usually only used if {@link #channel(Class)}
  is not working for you because of some more complex needs. If your {@link Channel} implementation
  has a no-args constructor, its highly recommend to just use {@link #channel(Class)} to
  simplify your code.