## org.apache.tools.ant.types
Class ZipScanner

    java.lang.Object
      |
      +--org.apache.tools.ant.DirectoryScanner
            |
            +--org.apache.tools.ant.types.ZipScanner

All Implemented Interfaces:
  FileScanner, ResourceFactory, SelectorScanner

public class ZipScanner
extends DirectoryScanner

ZipScanner accesses the pattern matching algorithm in DirectoryScanner, which are protected methods that can only be accessed by subclassing. This implementation of FileScanner defines getIncludedFiles to return the matching Zip entries.

Author:
  Don Ferguson don@bea.com, Antoine Levy-Lambert

Field Summary
`protected java.io.File` `srcFile` The zip file which should be scanned.

Fields inherited from class org.apache.tools.ant.DirectoryScanner
`basedir, DEFAULTEXCLUDES, dirsDeselected, dirsExcluded, dirsIncluded, dirsNotIncluded, everythingIncluded, excludes, filesDeselected, filesExcluded, filesIncluded, filesNotIncluded, haveSlowResults, includes, isCaseSensitive, selectors`

Constructor Summary
`ZipScanner()`

Method Summary
`java.lang.String[]` `getIncludedDirectories()` Returns the names of the directories which matched at least one of the include patterns and none of the exclude patterns.
`java.lang.String[]` `getIncludedFiles()` Returns the names of the files which matched at least one of the include patterns and none of the exclude patterns.
`Resource` `getResource(java.lang.String name)` Query a resource (file, zipentry, ...) by name
`void` `init()` Initialize DirectoryScanner data structures.
`boolean` `match(java.lang.String path)` Matches a jar entry against the includes/excludes list, normalizing the path separator.
`void` `setSrc(java.io.File srcFile)` Sets the srcFile for scanning.

Methods inherited from class org.apache.tools.ant.DirectoryScanner

`addDefaultExcludes, couldHoldIncluded, getBasedir, getDeselectedDirectories, getDeselectedFiles, getExcludedDirectories, getExcludedFiles, getNotIncludedDirectories, getNotIncludedFiles, isEverythingIncluded, isExcluded, isIncluded, isSelected, match, match, matchPath, matchPath, matchPatternStart, matchPatternStart, scan, scandir, setBasedir, setBasedir, setCaseSensitive, setExcludes, setFollowSymlinks, setIncludes, setSelectors, slowScan`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### srcFile

    protected java.io.File srcFile

  The zip file which should be scanned.

Constructor Detail

### ZipScanner

    public ZipScanner()

Method Detail

### setSrc

    public void setSrc(java.io.File srcFile)

  Sets the srcFile for scanning. This is the jar or zip file that is scanned for matching entries.

  Parameters:
    `srcFile` - the (non-null) zip file name for scanning

### getIncludedFiles

    public java.lang.String[] getIncludedFiles()

  Returns the names of the files which matched at least one of the include patterns and none of the exclude patterns. The names are relative to the base directory.

  Specified by:
    `getIncludedFiles` in interface `FileScanner`
  Overrides:
    `getIncludedFiles` in class `DirectoryScanner`
  Returns:
    the names of the files which matched at least one of the include patterns and none of the exclude patterns.

### getIncludedDirectories

    public java.lang.String[] getIncludedDirectories()

  Returns the names of the directories which matched at least one of the include patterns and none of the exclude patterns. The names are relative to the base directory.

  Specified by:
    `getIncludedDirectories` in interface `FileScanner`
  Overrides:
    `getIncludedDirectories` in class `DirectoryScanner`
  Returns:
    the names of the directories which matched at least one of the include patterns and none of the exclude patterns.

### init

    public void init()

  Initialize DirectoryScanner data structures.

### match

    public boolean match(java.lang.String path)

  Matches a jar entry against the includes/excludes list, normalizing the path separator.

  Parameters:
    `path` - the (non-null) path name to test for inclusion
  Returns:
    `true` if the path should be included `false` otherwise.

### getResource

    public Resource getResource(java.lang.String name)

  Description copied from interface: `ResourceFactory`
  Query a resource (file, zipentry, ...) by name

  Specified by:
    `getResource` in interface `ResourceFactory`
  Overrides:
    `getResource` in class `DirectoryScanner`
  Parameters:
    `name` - path name of the file sought in the archive
  Since:
    Ant 1.5.2

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