Class JarContents

java.lang.Object
org.apache.catalina.webresources.JarContents

public final class JarContents extends Object
This class represents the contents of a jar by determining whether a given resource might be in the cache, based on a bloom filter. This is not a general-purpose bloom filter because it contains logic to strip out characters from the beginning of the key. The hash methods are simple but good enough for this purpose.
  • Constructor Details

    • JarContents

      public JarContents(JarFile jar)
      Parses the passed-in jar and populates the bit array.
      Parameters:
      jar - the JAR file
  • Method Details

    • mightContainResource

      public boolean mightContainResource(String path, String webappRoot)
      Method that identifies whether a given path MIGHT be in this jar. Uses the Bloom filter mechanism.
      Parameters:
      path - Requested path. Sometimes starts with "/WEB-INF/classes".
      webappRoot - The value of the webapp location, which can be stripped from the path. Typically is "/WEB-INF/classes".
      Returns:
      Whether the prefix of the path is known to be in this jar.