Package org.apache.tools.ant.taskdefs
Class Expand
- java.lang.Object
-
- org.apache.tools.ant.ProjectComponent
-
- org.apache.tools.ant.Task
-
- org.apache.tools.ant.taskdefs.Expand
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
ERROR_MULTIPLE_MAPPERS
Error message when more that one mapper is definedstatic java.lang.String
NATIVE_ENCODING
-
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(ResourceCollection rc)
Add a resource collection.void
add(FileNameMapper fileNameMapper)
A nested filenamemappervoid
addFileset(FileSet set)
Add a filesetvoid
addPatternset(PatternSet set)
Add a patternset.Mapper
createMapper()
Defines the mapper to map source entries to destination files.void
execute()
Do the work.protected void
expandFile(FileUtils fileUtils, java.io.File srcF, java.io.File dir)
This method is to be overridden by extending unarchival tasks.protected void
expandResource(Resource srcR, java.io.File dir)
This method is to be overridden by extending unarchival tasks.protected void
extractFile(FileUtils fileUtils, java.io.File srcF, java.io.File dir, java.io.InputStream compressedInputStream, java.lang.String entryName, java.util.Date entryDate, boolean isDirectory, FileNameMapper mapper)
extract a file to a directoryjava.lang.Boolean
getAllowFilesToEscapeDest()
Whether to allow the extracted file or directory to be outside of the dest directory.java.lang.String
getEncoding()
boolean
getFailOnEmptyArchive()
Whether try ing to expand an empty archive would be an error.protected FileNameMapper
getMapper()
get a mapper for a fileboolean
getScanForUnicodeExtraFields()
protected void
internalSetEncoding(java.lang.String encoding)
Supports grand-children that want to support the attribute where the child-class doesn't (i.e.protected void
internalSetScanForUnicodeExtraFields(boolean b)
Supports grand-children that want to support the attribute where the child-class doesn't (i.e.void
setAllowFilesToEscapeDest(boolean b)
Whether to allow the extracted file or directory to be outside of the dest directory.void
setDest(java.io.File d)
Set the destination directory.void
setEncoding(java.lang.String encoding)
Sets the encoding to assume for file names and comments.void
setFailOnEmptyArchive(boolean b)
Whether try ing to expand an empty archive would be an error.void
setOverwrite(boolean b)
Should we overwrite files in dest, even if they are newer than the corresponding entries in the archive?void
setScanForUnicodeExtraFields(boolean b)
Whether unicode extra fields will be used if present.void
setSrc(java.io.File s)
Set the path to zip-file.void
setStripAbsolutePathSpec(boolean b)
Whether leading path separators should be stripped.-
Methods inherited from class org.apache.tools.ant.Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType
-
Methods inherited from class org.apache.tools.ant.ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject
-
-
-
-
Field Detail
-
NATIVE_ENCODING
public static final java.lang.String NATIVE_ENCODING
- See Also:
- Constant Field Values
-
ERROR_MULTIPLE_MAPPERS
public static final java.lang.String ERROR_MULTIPLE_MAPPERS
Error message when more that one mapper is defined- See Also:
- Constant Field Values
-
-
Method Detail
-
setFailOnEmptyArchive
public void setFailOnEmptyArchive(boolean b)
Whether try ing to expand an empty archive would be an error.- Parameters:
b
- boolean- Since:
- Ant 1.8.0
-
getFailOnEmptyArchive
public boolean getFailOnEmptyArchive()
Whether try ing to expand an empty archive would be an error.- Returns:
- boolean
- Since:
- Ant 1.8.0
-
execute
public void execute() throws BuildException
Do the work.- Overrides:
execute
in classTask
- Throws:
BuildException
- Thrown in unrecoverable error.
-
expandFile
protected void expandFile(FileUtils fileUtils, java.io.File srcF, java.io.File dir)
This method is to be overridden by extending unarchival tasks.- Parameters:
fileUtils
- the fileUtilssrcF
- the source filedir
- the destination directory
-
expandResource
protected void expandResource(Resource srcR, java.io.File dir)
This method is to be overridden by extending unarchival tasks.- Parameters:
srcR
- the source resourcedir
- the destination directory
-
getMapper
protected FileNameMapper getMapper()
get a mapper for a file- Returns:
- a filenamemapper for a file
-
extractFile
protected void extractFile(FileUtils fileUtils, java.io.File srcF, java.io.File dir, java.io.InputStream compressedInputStream, java.lang.String entryName, java.util.Date entryDate, boolean isDirectory, FileNameMapper mapper) throws java.io.IOException
extract a file to a directory- Parameters:
fileUtils
- a fileUtils objectsrcF
- the source filedir
- the destination directorycompressedInputStream
- the input streamentryName
- the name of the entryentryDate
- the date of the entryisDirectory
- if this is true the entry is a directorymapper
- the filename mapper to use- Throws:
java.io.IOException
- on error
-
setDest
public void setDest(java.io.File d)
Set the destination directory. File will be unzipped into the destination directory.- Parameters:
d
- Path to the directory.
-
setSrc
public void setSrc(java.io.File s)
Set the path to zip-file.- Parameters:
s
- Path to zip-file.
-
setOverwrite
public void setOverwrite(boolean b)
Should we overwrite files in dest, even if they are newer than the corresponding entries in the archive?- Parameters:
b
- aboolean
value
-
addPatternset
public void addPatternset(PatternSet set)
Add a patternset.- Parameters:
set
- a pattern set
-
addFileset
public void addFileset(FileSet set)
Add a fileset- Parameters:
set
- a file set
-
add
public void add(ResourceCollection rc)
Add a resource collection.- Parameters:
rc
- a resource collection.- Since:
- Ant 1.7
-
createMapper
public Mapper createMapper() throws BuildException
Defines the mapper to map source entries to destination files.- Returns:
- a mapper to be configured
- Throws:
BuildException
- if more than one mapper is defined- Since:
- Ant1.7
-
add
public void add(FileNameMapper fileNameMapper)
A nested filenamemapper- Parameters:
fileNameMapper
- the mapper to add- Since:
- Ant 1.6.3
-
setEncoding
public void setEncoding(java.lang.String encoding)
Sets the encoding to assume for file names and comments.Set to
native-encoding
if you want your platform's native encoding, defaults to UTF8.- Parameters:
encoding
- the name of the character encoding- Since:
- Ant 1.6
-
internalSetEncoding
protected void internalSetEncoding(java.lang.String encoding)
Supports grand-children that want to support the attribute where the child-class doesn't (i.e. Unzip in the compress Antlib).- Parameters:
encoding
- String- Since:
- Ant 1.8.0
-
getEncoding
public java.lang.String getEncoding()
- Returns:
- String
- Since:
- Ant 1.8.0
-
setStripAbsolutePathSpec
public void setStripAbsolutePathSpec(boolean b)
Whether leading path separators should be stripped.- Parameters:
b
- boolean- Since:
- Ant 1.8.0
-
setScanForUnicodeExtraFields
public void setScanForUnicodeExtraFields(boolean b)
Whether unicode extra fields will be used if present.- Parameters:
b
- boolean- Since:
- Ant 1.8.0
-
internalSetScanForUnicodeExtraFields
protected void internalSetScanForUnicodeExtraFields(boolean b)
Supports grand-children that want to support the attribute where the child-class doesn't (i.e. Unzip in the compress Antlib).- Parameters:
b
- boolean- Since:
- Ant 1.8.0
-
getScanForUnicodeExtraFields
public boolean getScanForUnicodeExtraFields()
- Returns:
- boolean
- Since:
- Ant 1.8.0
-
setAllowFilesToEscapeDest
public void setAllowFilesToEscapeDest(boolean b)
Whether to allow the extracted file or directory to be outside of the dest directory.- Parameters:
b
- the flag- Since:
- Ant 1.10.4
-
getAllowFilesToEscapeDest
public java.lang.Boolean getAllowFilesToEscapeDest()
Whether to allow the extracted file or directory to be outside of the dest directory.- Returns:
null
if the flag hasn't been set explicitly, otherwise the value set by the user.- Since:
- Ant 1.10.4
-
-