code: private M invalidMessage(Exception cause) {
          state = State.BAD_MESSAGE;
          M message = buildInvalidMessage();
          message.setDecoderResult(DecoderResult.failure(cause));
          return message;
      }
docs: Helper method to create a message indicating a invalid decoding result.
  
  @param cause the cause of the decoding failure.
  @return a valid message indicating failure.