Package com.google.javascript.jscomp

# Class WhitelistWarningsGuard

java.lang.Object
com.google.javascript.jscomp.WarningsGuard
com.google.javascript.jscomp.WhitelistWarningsGuard

All Implemented Interfaces:
  `Serializable`

public class WhitelistWarningsGuard extends WarningsGuard
An extension of `WarningsGuard` that provides functionality to maintain a list of warnings (white-list). It is subclasses' responsibility to decide what to do with the white-list by implementing the `level` function. Warnings are defined by the name of the JS file and the first line of warnings description.

See Also:
  - Serialized Form

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`WhitelistWarningsGuard.WhitelistBuilder`

## Nested classes/interfaces inherited from class com.google.javascript.jscomp.WarningsGuard

`WarningsGuard.Priority`

## Constructor Summary

Constructors
Constructor
Description
`WhitelistWarningsGuard(Set<String> whitelist)`
This class depends on an input set that contains the white-list.

## Method Summary

Modifier and Type
Method
Description
`protected boolean`
`containWarning(String formattedWarning)`
Determines whether a given warning is included in the white-list.
`static String`
`formatWarning(JSError error)`
`static String`
`formatWarning(JSError error, boolean withMetaData)`
`static WhitelistWarningsGuard`
`fromFile(File file)`
Creates a warnings guard from a file.
`static String`
`getFirstLine(String warning)`
`int`
`getPriority()`
The priority in which warnings guards are applied.
`CheckLevel`
`level(JSError error)`
Returns a new check level for a given error.
`protected static Set<String>`
`loadWhitelistedJsWarnings(com.google.common.io.InputSupplier<? extends Reader> supplier)`
Loads legacy warnings list from the file.
`static Set<String>`
`loadWhitelistedJsWarnings(File file)`
Loads legacy warnings list from the file.

### Methods inherited from class com.google.javascript.jscomp.WarningsGuard

`disables, enables`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### WhitelistWarningsGuard

public WhitelistWarningsGuard(Set<String> whitelist)
This class depends on an input set that contains the white-list. The format of each white-list string is: invalid input: '<'file-name>:invalid input: '<'line-number>? invalid input: '<'warning-description> # invalid input: '<'optional-comment>

Parameters:
  `whitelist` - The set of JS-warnings that are white-listed. This is expected to have similar format as `formatWarning(JSError)`.

## Method Details

### level

public CheckLevel level(JSError error)
Description copied from class: `WarningsGuard`
Returns a new check level for a given error. OFF - suppress it, ERROR - report as error. null means that this guard does not know what to do with the error. Null is extremely helpful when you have a chain of guards. If current guard returns null, then the next in the chain should process it.

Specified by:
  `level` in class `WarningsGuard`
Parameters:
  `error` - a reported error.
Returns:
  what level given error should have.

### containWarning

protected boolean containWarning(String formattedWarning)
Determines whether a given warning is included in the white-list.

Parameters:
  `formattedWarning` - the warning formatted by `formatWarning`
Returns:
  whether the given warning is white-listed or not.

### getPriority

public int getPriority()
Description copied from class: `WarningsGuard`
The priority in which warnings guards are applied. Lower means the guard will be applied sooner. Expressed on a scale of 1 to 100.

Overrides:
  `getPriority` in class `WarningsGuard`

### fromFile

public static WhitelistWarningsGuard fromFile(File file)
Creates a warnings guard from a file.

### loadWhitelistedJsWarnings

public static Set<String> loadWhitelistedJsWarnings(File file)
Loads legacy warnings list from the file.

Returns:
  The lines of the file.

### loadWhitelistedJsWarnings

protected static Set<String> loadWhitelistedJsWarnings(com.google.common.io.InputSupplier<? extends Reader> supplier)
Loads legacy warnings list from the file.

Returns:
  The lines of the file.

### formatWarning

public static String formatWarning(JSError error)

### formatWarning

public static String formatWarning(JSError error, boolean withMetaData)

Parameters:
  `withMetaData` - If true, include metadata that's useful to humans This metadata won't be used for matching the warning.

### getFirstLine

public static String getFirstLine(String warning)