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
Modifier and TypeFieldDescriptionstatic final String
Error message when more that one mapper is definedstatic final String
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Add a resource collection.void
add
(FileNameMapper fileNameMapper) A nested filenamemappervoid
addFileset
(FileSet set) Add a filesetvoid
addPatternset
(PatternSet set) Add a patternset.Defines the mapper to map source entries to destination files.void
execute()
Do the work.protected void
expandFile
(FileUtils fileUtils, File srcF, File dir) This method is to be overridden by extending unarchival tasks.protected void
expandResource
(Resource srcR, File dir) This method is to be overridden by extending unarchival tasks.protected void
extractFile
(FileUtils fileUtils, File srcF, File dir, InputStream compressedInputStream, String entryName, Date entryDate, boolean isDirectory, FileNameMapper mapper) extract a file to a directoryWhether to allow the extracted file or directory to be outside of the dest directory.boolean
Whether try ing to expand an empty archive would be an error.protected FileNameMapper
get a mapper for a fileboolean
protected void
internalSetEncoding
(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
Set the destination directory.void
setEncoding
(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
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 Details
-
NATIVE_ENCODING
- See Also:
-
ERROR_MULTIPLE_MAPPERS
Error message when more that one mapper is defined- See Also:
-
-
Constructor Details
-
Expand
public Expand()Creates an Expand instance and sets encoding to UTF-8. -
Expand
Creates an Expand instance and sets the given encoding.- Parameters:
encoding
- String- Since:
- Ant 1.9.5
-
-
Method Details
-
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
Do the work.- Overrides:
execute
in classTask
- Throws:
BuildException
- Thrown in unrecoverable error.
-
expandFile
-
expandResource
-
getMapper
-
extractFile
protected void extractFile(FileUtils fileUtils, File srcF, File dir, InputStream compressedInputStream, String entryName, Date entryDate, boolean isDirectory, FileNameMapper mapper) throws 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:
IOException
- on error
-
setDest
Set the destination directory. File will be unzipped into the destination directory.- Parameters:
d
- Path to the directory.
-
setSrc
-
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
-
addFileset
-
add
Add a resource collection.- Parameters:
rc
- a resource collection.- Since:
- Ant 1.7
-
createMapper
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
A nested filenamemapper- Parameters:
fileNameMapper
- the mapper to add- Since:
- Ant 1.6.3
-
setEncoding
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
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
- 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
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
-