org.apache.tomcat.util.scan

## Class StandardJarScanFilter

- java.lang.Object
- - org.apache.tomcat.util.scan.StandardJarScanFilter

- All Implemented Interfaces:
    JarScanFilter

      public class StandardJarScanFilter
      extends Object
      implements JarScanFilter

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `StandardJarScanFilter()` This is the standard implementation of `JarScanFilter`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `check(JarScanType jarScanType, String jarName)`
    `String` | `getPluggabilityScan()`
    `String` | `getPluggabilitySkip()`
    `String` | `getTldScan()`
    `String` | `getTldSkip()`
    `boolean` | `isDefaultPluggabilityScan()`
    `boolean` | `isDefaultTldScan()`
    `boolean` | `isSkipAll()`
    `void` | `setDefaultPluggabilityScan(boolean defaultPluggabilityScan)`
    `void` | `setDefaultTldScan(boolean defaultTldScan)`
    `void` | `setPluggabilityScan(String pluggabilityScan)`
    `void` | `setPluggabilitySkip(String pluggabilitySkip)`
    `void` | `setTldScan(String tldScan)`
    `void` | `setTldSkip(String tldSkip)`

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

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

- - ### Constructor Detail

    - #### StandardJarScanFilter

          public StandardJarScanFilter()

      This is the standard implementation of `JarScanFilter`. By default, the following filtering rules are used:
      - JARs that match neither the skip nor the scan list will be included in scan results.
      - JARs that match the skip list but not the scan list will be excluded from scan results.
      - JARs that match the scan list will be included from scan results.
      The default skip list and default scan list are obtained from the system properties `Constants.SKIP_JARS_PROPERTY` and `Constants.SCAN_JARS_PROPERTY` respectively. These default values may be over-ridden for the `JarScanType.TLD` and `JarScanType.PLUGGABILITY` scans. The filtering rules may also be modified for these scan types using `setDefaultTldScan(boolean)` and `setDefaultPluggabilityScan(boolean)`. If set to `false`, the following filtering rules are used for associated type:
      - JARs that match neither the skip nor the scan list will be excluded from scan results.
      - JARs that match the scan list but not the skip list will be included in scan results.
      - JARs that match the skip list will be excluded from scan results.

  - ### Method Detail

    - #### getTldSkip

          public String getTldSkip()

    - #### setTldSkip

          public void setTldSkip(String tldSkip)

    - #### getTldScan

          public String getTldScan()

    - #### setTldScan

          public void setTldScan(String tldScan)

    - #### isSkipAll

          public boolean isSkipAll()

      Specified by:
        `isSkipAll` in interface `JarScanFilter`
      Returns:
        `true` if all of the scans should be skipped which can improve startup performance. The default is `false`.

    - #### isDefaultTldScan

          public boolean isDefaultTldScan()

    - #### setDefaultTldScan

          public void setDefaultTldScan(boolean defaultTldScan)

    - #### getPluggabilitySkip

          public String getPluggabilitySkip()

    - #### setPluggabilitySkip

          public void setPluggabilitySkip(String pluggabilitySkip)

    - #### getPluggabilityScan

          public String getPluggabilityScan()

    - #### setPluggabilityScan

          public void setPluggabilityScan(String pluggabilityScan)

    - #### isDefaultPluggabilityScan

          public boolean isDefaultPluggabilityScan()

    - #### setDefaultPluggabilityScan

          public void setDefaultPluggabilityScan(boolean defaultPluggabilityScan)

    - #### check

          public boolean check(JarScanType jarScanType,
                               String jarName)

      Specified by:
        `check` in interface `JarScanFilter`
      Parameters:
        `jarScanType` - The type of JAR scan currently being performed
        `jarName` - The name of the JAR file (without any path information) to be checked to see if it should be included in the results or not
      Returns:
        `true` if the JAR should be returned in the results, `false` if it should be excluded

Copyright © 2000-2022 Apache Software Foundation. All Rights Reserved.