Interface ParsingContext

    • Method Detail

      • headers

        java.lang.String[] headers()
        Returns the file headers that identify each parsed record.

        If the headers are extracted from the input (i.e. CommonParserSettings.isHeaderExtractionEnabled() == true), then these values will be returned.

        If no headers are extracted from the input, then the configured headers in CommonSettings.getHeaders() will be returned. Note that the user-provided headers will override the header list parsed from the input, if any. To obtain the original list of headers found in the input use parsedHeaders()

        Specified by:
        headers in interface Context
        Returns:
        the headers used to identify each record parsed from the input.
        See Also:
        CommonParserSettings, CommonSettings
      • extractedFieldIndexes

        int[] extractedFieldIndexes()
        Returns the indexes of each field extracted from the input when fields are selected in the parser settings (i.e. using CommonSettings.selectFields(java.lang.String...) and friends).

        The indexes are relative to their original position in the input.

        For example, if the input has the fields "A, B, C, D", and the selected fields are "A, D", then the extracted field indexes will return [0, 3]

        If no fields were selected, then this method will return null. This means all fields are being parsed.

        Specified by:
        extractedFieldIndexes in interface Context
        Returns:
        The indexes of each selected field; null if no fields were selected.
        See Also:
        CommonSettings
      • currentLine

        long currentLine()
        Returns the current line of text being processed by the parser
        Returns:
        current line of text being processed by the parser
      • currentChar

        long currentChar()
        Returns the index of the last char read from the input so far.
        Returns:
        the index of the last char read from the input so far.
      • skipLines

        void skipLines​(long lines)
        Skips a given number of lines from the current position.
        Parameters:
        lines - the number of lines to be skipped.
      • currentParsedContent

        java.lang.String currentParsedContent()
        Returns a String with the input character sequence parsed to produce the current record.
        Returns:
        the text content parsed for the current input record.
      • currentParsedContentLength

        int currentParsedContentLength()
        Returns the length of the character sequence parsed to produce the current record.
        Returns:
        the length of the text content parsed for the current input record
      • fieldContentOnError

        java.lang.String fieldContentOnError()
        Returns a String with the input character sequence accumulated on a field before TextParsingException occurred.
        Returns:
        the text content parsed for the current field of the current input record at the time of the error.
      • comments

        java.util.Map<java.lang.Long,​java.lang.String> comments()
        Returns all comments collected by the parser so far. An empty map will be returned if CommonParserSettings.isCommentCollectionEnabled() evaluates to false.
        Returns:
        a map containing the line numbers and comments found in each.
      • lineSeparator

        char[] lineSeparator()
        Returns the line separator characters used to separate individual records when parsing. This could be the line separator defined in the Format.getLineSeparator() configuration, or the line separator sequence identified automatically when CommonParserSettings.isLineSeparatorDetectionEnabled() evaluates to true.
        Returns:
        the line separator sequence. Might contain one or two characters.