Class Expand
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.Expand
- All Implemented Interfaces:
Cloneable
- Direct Known Subclasses:
Untar
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringError message when more that one mapper is definedstatic final StringFields inherited from class ProjectComponent
description, location, project -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAdd a resource collection.voidadd(FileNameMapper fileNameMapper) A nested filenamemappervoidaddFileset(FileSet set) Add a filesetvoidaddPatternset(PatternSet set) Add a patternset.Defines the mapper to map source entries to destination files.voidexecute()Do the work.protected voidexpandFile(FileUtils fileUtils, File srcF, File dir) This method is to be overridden by extending unarchival tasks.protected voidexpandResource(Resource srcR, File dir) This method is to be overridden by extending unarchival tasks.protected voidextractFile(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.booleanWhether try ing to expand an empty archive would be an error.protected FileNameMapperget a mapper for a filebooleanprotected voidinternalSetEncoding(String encoding) Supports grand-children that want to support the attribute where the child-class doesn't (i.e.protected voidinternalSetScanForUnicodeExtraFields(boolean b) Supports grand-children that want to support the attribute where the child-class doesn't (i.e.voidsetAllowFilesToEscapeDest(boolean b) Whether to allow the extracted file or directory to be outside of the dest directory.voidSet the destination directory.voidsetEncoding(String encoding) Sets the encoding to assume for file names and comments.voidsetFailOnEmptyArchive(boolean b) Whether try ing to expand an empty archive would be an error.voidsetOverwrite(boolean b) Should we overwrite files in dest, even if they are newer than the corresponding entries in the archive?voidsetScanForUnicodeExtraFields(boolean b) Whether unicode extra fields will be used if present.voidSet the path to zip-file.voidsetStripAbsolutePathSpec(boolean b) Whether leading path separators should be stripped.Methods inherited from class Task
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskTypeModifier and TypeMethodDescriptionfinal voidbindToOwner(Task owner) Bind a task to another; use this when configuring a newly created task to do work on behalf of another.Returns the container target of this task.Returns the wrapper used for runtime configuration.Returns the name to use in logging messages.Return the type of task.protected RuntimeConfigurableReturn the runtime configurable structure for this task.protected voidhandleErrorFlush(String output) Handles an error line by logging it with the WARN priority.protected voidhandleErrorOutput(String output) Handles an error output by logging it with the WARN priority.protected voidhandleFlush(String output) Handles output by logging it with the INFO priority.protected inthandleInput(byte[] buffer, int offset, int length) Handle an input request by this task.protected voidhandleOutput(String output) Handles output by logging it with the INFO priority.voidinit()Called by the project to let the task initialize properly.protected final booleanHas this task been marked invalid?voidLogs a message with the default (INFO) priority.voidLogs a message with the given priority.voidLogs a message with the given priority.voidLogs a message with the given priority.voidConfigures this task - if it hasn't been done already.final voidperform()Performs this task if it's still valid, or gets a replacement version and performs that otherwise.voidForce the task to be reconfigured from its RuntimeConfigurable.voidsetOwningTarget(Target target) Sets the target container of this task.voidSets the wrapper to be used for runtime configuration.voidsetTaskName(String name) Sets the name to use in logging messages.voidsetTaskType(String type) Sets the name with which the task has been invoked.Methods inherited from class ProjectComponent
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProjectModifier and TypeMethodDescriptionclone()Returns the description of the current action.Returns the file/location where this task was defined.Returns the project to which this component belongs.voidsetDescription(String desc) Sets a description of the current action.voidsetLocation(Location location) Sets the file/location where this task was defined.voidsetProject(Project project) Sets the project object of this component.
-
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:
executein 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- abooleanvalue
-
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-encodingif 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:
nullif the flag hasn't been set explicitly, otherwise the value set by the user.- Since:
- Ant 1.10.4
-