Github user ottobackwards commented on a diff in the pull request:

    https://github.com/apache/metron/pull/1184#discussion_r223837103
  
    --- Diff: 
metron-platform/metron-parsers/src/main/java/org/apache/metron/parsers/interfaces/MessageParser.java
 ---
    @@ -31,23 +35,41 @@
       /**
        * Take raw data and convert it to a list of messages.
        *
    -   * @param rawMessage
    +   * @param rawMessage the raw bytes of the message
        * @return If null is returned, this is treated as an empty list.
        */
       List<T> parse(byte[] rawMessage);
     
       /**
        * Take raw data and convert it to an optional list of messages.
    -   * @param parseMessage
    +   * @param parseMessage the raw bytes of the message
        * @return If null is returned, this is treated as an empty list.
        */
       default Optional<List<T>> parseOptional(byte[] parseMessage) {
         return Optional.ofNullable(parse(parseMessage));
       }
     
    +  /**
    +   * Take raw data and convert it to messages.  Each raw message may 
produce multiple messages and therefore
    +   * multiple errors.  A {@link MessageParserResult} is returned, which 
will have both the messages produced
    +   * and the errors.
    +   * @param parseMessage the raw bytes of the message
    +   * @return Optional of {@link MessageParserResult}
    +   */
    +  default Optional<MessageParserResult<T>> parseOptionalResult(byte[] 
parseMessage) {
    --- End diff --
    
    Right, the Optional interface is the newer, so I 'built' on that approach.


---

Reply via email to