Class AbstractParser

    • Field Detail

      • BUNDLE_CLASSNAME

        public static final java.lang.String BUNDLE_CLASSNAME
        The default resource bundle base name.
        See Also:
        Constant Field Values
      • errorHandler

        protected ErrorHandler errorHandler
        The error handler.
      • localizableSupport

        protected LocalizableSupport localizableSupport
        The localizable support.
      • current

        protected int current
        The current character.
    • Constructor Detail

      • AbstractParser

        public AbstractParser()
    • Method Detail

      • getCurrent

        public int getCurrent()
        Returns the current character value.
      • formatMessage

        public java.lang.String formatMessage​(java.lang.String key,
                                              java.lang.Object[] args)
                                       throws java.util.MissingResourceException
        Specified by:
        formatMessage in interface Localizable
        Parameters:
        key - The key used to retreive the message from the resource bundle.
        args - The objects that compose the message.
        Throws:
        java.util.MissingResourceException - if the key is not in the bundle.
      • setErrorHandler

        public void setErrorHandler​(ErrorHandler handler)
        Allow an application to register an error event handler.

        If the application does not register an error event handler, all error events reported by the parser will cause an exception to be thrown.

        Applications may register a new or different handler in the middle of a parse, and the parser must begin using the new handler immediately.

        Specified by:
        setErrorHandler in interface Parser
        Parameters:
        handler - The error handler.
      • parse

        public void parse​(java.io.InputStream is,
                          java.lang.String enc)
                   throws ParseException
        Parses the given input stream. If the encoding is null, ISO-8859-1 is used.
        Throws:
        ParseException
      • doParse

        protected abstract void doParse()
                                 throws ParseException,
                                        java.io.IOException
        Method responsible for actually parsing data after AbstractParser has initialized itself.
        Throws:
        ParseException
        java.io.IOException
      • reportError

        protected void reportError​(java.lang.String key,
                                   java.lang.Object[] args)
                            throws ParseException
        Signals an error to the error handler.
        Parameters:
        key - The message key in the resource bundle.
        args - The message arguments.
        Throws:
        ParseException
      • reportCharacterExpectedError

        protected void reportCharacterExpectedError​(char expectedChar,
                                                    int currentChar)
        simple api to call often reported error. Just a wrapper for reportError().
        Parameters:
        expectedChar - what caller expected
        currentChar - what caller found
      • reportUnexpectedCharacterError

        protected void reportUnexpectedCharacterError​(int currentChar)
        simple api to call often reported error. Just a wrapper for reportError().
        Parameters:
        currentChar - what the caller found and didnt expect
      • createErrorMessage

        protected java.lang.String createErrorMessage​(java.lang.String key,
                                                      java.lang.Object[] args)
        Returns a localized error message.
        Parameters:
        key - The message key in the resource bundle.
        args - The message arguments.
      • getBundleClassName

        protected java.lang.String getBundleClassName()
        Returns the resource bundle base name.
        Returns:
        BUNDLE_CLASSNAME.
      • skipSpaces

        protected void skipSpaces()
                           throws java.io.IOException
        Skips the whitespaces in the current reader.
        Throws:
        java.io.IOException
      • skipCommaSpaces

        protected void skipCommaSpaces()
                                throws java.io.IOException
        Skips the whitespaces and an optional comma.
        Throws:
        java.io.IOException