* Interface method implementation. Tries to read the Thrift protocol message. Returns null if unsuccessful, else returns the read byte array. Also
* resets the {@link ChannelBuffer} reader index to nullify the effect of the read operation.
* @see org.jboss.netty.handler.codec.replay.ReplayingDecoder#decode(org.jboss.netty.channel.ChannelHandlerContext, org.jboss.netty.channel.Channel, org.jboss.netty.buffer.ChannelBuffer, java.lang.Enum)
*/
protected Object decode(ChannelHandlerContext ctx, Channel channel, ChannelBuffer buffer, VoidEnum voidEnum) throws Exception {
ThriftNettyChannelBuffer ttransport = new ThriftNettyChannelBuffer(buffer, null); // we dont use the output buffer, so null is fine
TProtocol iprot = this.protocolFactory.getProtocol(ttransport);
int beginIndex = buffer.readerIndex();
buffer.markReaderIndex();
iprot.readMessageBegin();