title: Netty channelread confusion
body: <p>I began using Netty 3 months ago.  Initially it looked pretty simple and straight forward to use, as I followed the example given in the home page for 4.x series.</p>
  
  <p>As I am exploring it much deeper, I am unable to understand certain events or callback names.  For example, I am unable to understand the difference between the following:</p>
  
  <pre><code>ChannelRead(ChannelHandleContext ctx, Object msg) { ... }
  
  channelRead0(ChannelHandlerContext ctx, String message) { ... }
  
  messageReceived(ChannelHandlerContext, I) { ...}
  </code></pre>
  
  <p>Saw that netty homepage examples always use channelRead, but some examples in internet refer to channelRead0.</p>
  
  <p>Also read that channelRead0 is renamed as messageReceived.
  If I am writing a simple server program, which one of the above should I use?</p>
  
  <p>Adding to my confusion, I also see Netty packages from JBOss such as</p>
  
  <pre><code>org.jboss.netty.bootstrap.*;
  </code></pre>
  
  <p>apart from</p>
  
  <pre><code>io.netty.bootstrap.ServerBootstrap;
  </code></pre>
  
  <p>What is the appropriate way for a newbie to begin and understand netty?</p>