Class LoggingCSSParseErrorHandler
java.lang.Object
com.helger.css.reader.errorhandler.LoggingCSSParseErrorHandler
- All Implemented Interfaces:
ICSSParseErrorHandler
A logging implementation of
ICSSParseErrorHandler. So in case a
recoverable error occurs, the details are logged to an SLF4J logger.- Author:
- Philip Helger
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic StringcreateLoggingStringBrowserCompliantSkip(ParseException ex, Token aFromToken, Token aToToken) static StringcreateLoggingStringDeprecatedProperty(Token aPrefixToken, Token aIdentifierToken) Create a common string to be used for deprecated properties.static StringcreateLoggingStringIllegalCharacter(char cIllegalChar) static Stringstatic StringcreateLoggingStringParseError(Token aLastValidToken, int[][] aExpectedTokenSequencesVal, String[] aTokenImageVal, Token aLastSkippedToken) static StringcreateLoggingStringUnexpectedRule(Token aCurrentToken, String sRule, String sMsg) Create a common string to be used for unexpected rules.voidonCSSBrowserCompliantSkip(ParseException ex, Token aFromToken, Token aToToken) This method is only called in browser compliant mode if a certain part of the CSS is skipped.voidonCSSDeprecatedProperty(Token aPrefixToken, Token aIdentifierToken) To be called, if a deprecated old IE 6/7 property is found.voidonCSSParseError(ParseException aParseEx, Token aLastSkippedToken) Called upon a recoverable error.voidonCSSUnexpectedRule(Token aCurrentToken, String sRule, String sMsg) Called upon an unexpected rule.voidonIllegalCharacter(char cIllegalChar) This method is invoked, when an illegal character is encountered (in TokenManager), and the respective rule is part of the JavaCC grammar.toString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.helger.css.reader.errorhandler.ICSSParseErrorHandler
and
-
Constructor Details
-
LoggingCSSParseErrorHandler
public LoggingCSSParseErrorHandler()Default constructor.
-
-
Method Details
-
createLoggingStringParseError
-
createLoggingStringParseError
-
onCSSParseError
public void onCSSParseError(@Nonnull ParseException aParseEx, @Nullable Token aLastSkippedToken) throws ParseException Description copied from interface:ICSSParseErrorHandlerCalled upon a recoverable error. The parameter list is similar to the one of theParseException.- Specified by:
onCSSParseErrorin interfaceICSSParseErrorHandler- Parameters:
aParseEx- The original parse exception. May not benull.aLastSkippedToken- The token until which was skipped (incl.) May benull.- Throws:
ParseException- In case the error is fatal and should be propagated.
-
createLoggingStringUnexpectedRule
@Nonnull @Nonempty public static String createLoggingStringUnexpectedRule(@Nonnull Token aCurrentToken, @Nonnull @Nonempty String sRule, @Nonnull @Nonempty String sMsg) Create a common string to be used for unexpected rules.- Parameters:
aCurrentToken- The current token that caused an error. Nevernull.sRule- The name of the rule. Always starts with a '@'. May neither benullnor empty.sMsg- The custom error message. Neithernullnor empty.- Returns:
- The concatenated string with source location, rule and message. May
neither be
nullnor empty.
-
onCSSUnexpectedRule
public void onCSSUnexpectedRule(@Nonnull Token aCurrentToken, @Nonnull @Nonempty String sRule, @Nonnull @Nonempty String sMsg) throws ParseException Description copied from interface:ICSSParseErrorHandlerCalled upon an unexpected rule. This happens e.g. when@importis used in the middle of the file.- Specified by:
onCSSUnexpectedRulein interfaceICSSParseErrorHandler- Parameters:
aCurrentToken- The token that could not be interpreted. Nevernull.sRule- The name of the rule. Always starts with a '@'. Neithernullnor empty.sMsg- The custom error message. Neithernullnor empty.- Throws:
ParseException- In case the error is fatal and should be propagated.
-
createLoggingStringDeprecatedProperty
@Nonnull @Nonempty public static String createLoggingStringDeprecatedProperty(@Nonnull Token aPrefixToken, @Nonnull Token aIdentifierToken) Create a common string to be used for deprecated properties. To be called, if a deprecated old IE 6/7 property is found.- Parameters:
aPrefixToken- The prefix token found (like '$' or '*'). Nevernull.aIdentifierToken- The identifier token found. Nevernull.- Returns:
- The concatenated string with source location, etc. May neither be
nullnor empty. - Throws:
ParseException- In case the error is fatal and should be propagated.
-
onCSSDeprecatedProperty
Description copied from interface:ICSSParseErrorHandlerTo be called, if a deprecated old IE 6/7 property is found.- Specified by:
onCSSDeprecatedPropertyin interfaceICSSParseErrorHandler- Parameters:
aPrefixToken- The prefix token found (like '$' or '*'). Nevernull.aIdentifierToken- The identifier token found. Nevernull.
-
createLoggingStringBrowserCompliantSkip
-
onCSSBrowserCompliantSkip
public void onCSSBrowserCompliantSkip(@Nullable ParseException ex, @Nonnull Token aFromToken, @Nonnull Token aToToken) throws ParseException Description copied from interface:ICSSParseErrorHandlerThis method is only called in browser compliant mode if a certain part of the CSS is skipped.- Specified by:
onCSSBrowserCompliantSkipin interfaceICSSParseErrorHandler- Parameters:
ex- The originalParseExceptionthat causes the parser to skip. May benull.aFromToken- Original token that caused the error and was skipped (inclusive). Nevernull.aToToken- The end token until which was skipped (exclusive). Nevernull.- Throws:
ParseException- In case the error is fatal and should be propagated.- See Also:
-
createLoggingStringIllegalCharacter
-
onIllegalCharacter
public void onIllegalCharacter(char cIllegalChar) Description copied from interface:ICSSParseErrorHandlerThis method is invoked, when an illegal character is encountered (in TokenManager), and the respective rule is part of the JavaCC grammar.- Specified by:
onIllegalCharacterin interfaceICSSParseErrorHandler- Parameters:
cIllegalChar- The illegal char
-
toString
-