# Interface JarScannerCallback

All Known Implementing Classes:
  `FragmentJarScannerCallback`

public interface JarScannerCallback
This interface is implemented by clients of the `JarScanner` to enable them to receive notification of a discovered JAR.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `scan(File file, String webappPath, boolean isWebapp)`
  A directory was found that is to be treated as an unpacked JAR.
  `void`
  `scan(Jar jar, String webappPath, boolean isWebapp)`
  A JAR was found and may be accessed for further processing via the provided URL connection.
  `void`
  `scanWebInfClasses()`
  A directory structure was found within the web application at /WEB-INF/classes that should be handled as an unpacked JAR.

- ## Method Details

  - ### scan

    void scan(Jar jar, String webappPath, boolean isWebapp) throws IOException
    A JAR was found and may be accessed for further processing via the provided URL connection. The caller is responsible for closing the JAR.
    Parameters:
      `jar` - The JAR to process
      `webappPath` - The path, if any, to the JAR within the web application
      `isWebapp` - Indicates if the JAR was found within a web application. If `false` the JAR should be treated as being provided by the container
    Throws:
      `IOException` - if an I/O error occurs while scanning the JAR

  - ### scan

    void scan(File file, String webappPath, boolean isWebapp) throws IOException
    A directory was found that is to be treated as an unpacked JAR. The directory may be accessed for further processing via the provided file.
    Parameters:
      `file` - The directory containing the unpacked JAR.
      `webappPath` - The path, if any, to the file within the web application
      `isWebapp` - Indicates if the JAR was found within a web application. If `false` the JAR should be treated as being provided by the container
    Throws:
      `IOException` - if an I/O error occurs while scanning the JAR

  - ### scanWebInfClasses

    void scanWebInfClasses() throws IOException
    A directory structure was found within the web application at /WEB-INF/classes that should be handled as an unpacked JAR. Note that all resource access must be via the ServletContext to ensure that any additional resources are visible.
    Throws:
      `IOException` - if an I/O error occurs while scanning WEB-INF/classes