Class ImageIOTask
- java.lang.Object
-
- org.apache.tools.ant.ProjectComponent
-
- org.apache.tools.ant.Task
-
- org.apache.tools.ant.taskdefs.MatchingTask
-
- org.apache.tools.ant.taskdefs.optional.image.ImageIOTask
-
- All Implemented Interfaces:
java.lang.Cloneable
,SelectorContainer
public class ImageIOTask extends MatchingTask
A MatchingTask which relies on Java ImageIO to read existing image files and write the results of AWT image manipulation operations. The operations are represented as ImageOperation DataType objects. The task replaces a JAI-based Image task which no longer works with Java 9+.- See Also:
ImageOperation
,DataType
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ImageIOTask.ImageFormat
defines acceptable image formats.
-
Field Summary
-
Fields inherited from class org.apache.tools.ant.taskdefs.MatchingTask
fileset
-
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
-
-
Constructor Summary
Constructors Constructor Description ImageIOTask()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
add(ImageOperation instr)
Add an ImageOperation to chain.void
add(FileNameMapper fileNameMapper)
Add a nested filenamemapper.void
addDraw(Draw instr)
Add a Draw ImageOperation to the chain.void
addFileset(FileSet set)
Add a set of files to be deleted.void
addImageOperation(ImageOperation instr)
Add an ImageOperation to chain.void
addRotate(Rotate instr)
Add a Rotate ImageOperation to the chain.void
addScale(Scale instr)
Add a Scale ImageOperation to the chain.Mapper
createMapper()
Defines the mapper to map source to destination files.void
execute()
Executes the Task.int
processDir(java.io.File srcDir, java.lang.String[] srcNames, java.io.File dstDir, FileNameMapper mapper)
Executes all the chained ImageOperations on the files inside the directory.void
processFile(java.io.File file)
Deprecated.this method isn't used anymorevoid
processFile(java.io.File file, java.io.File newFile)
Executes all the chained ImageOperations on the file specified.void
setDestDir(java.io.File destDir)
Set the destination directory for manipulated images.void
setFailOnError(boolean flag)
Set whether to fail on error.void
setFormat(ImageIOTask.ImageFormat format)
Set the output image format.void
setGc(boolean gc)
Set whether to invoke Garbage Collection after each image processed.void
setOverwrite(boolean overwrite)
Set whether to overwrite a file if there is a naming conflict.void
setSrcdir(java.io.File srcDir)
Set the source dir to find the image files.protected void
validateAttributes()
Ensure we have a consistent and legal set of attributes, and set any internal flags necessary based on different combinations of attributes.-
Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask
add, addAnd, addContains, addContainsRegexp, addCustom, addDate, addDepend, addDepth, addDifferent, addFilename, addMajority, addModified, addNone, addNot, addOr, addPresent, addSelector, addSize, addType, appendSelector, createExclude, createExcludesFile, createInclude, createIncludesFile, createPatternSet, getDirectoryScanner, getImplicitFileSet, getSelectors, hasSelectors, selectorCount, selectorElements, setCaseSensitive, setDefaultexcludes, setExcludes, setExcludesfile, setFollowSymlinks, setIncludes, setIncludesfile, setProject, XsetIgnore, XsetItems
-
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
-
-
-
-
Method Detail
-
addFileset
public void addFileset(FileSet set)
Add a set of files to be deleted.- Parameters:
set
- the FileSet to add.
-
setFailOnError
public void setFailOnError(boolean flag)
Set whether to fail on error. If false, note errors to the output but keep going.- Parameters:
flag
- true or false.
-
setSrcdir
public void setSrcdir(java.io.File srcDir)
Set the source dir to find the image files.- Parameters:
srcDir
- the directory in which the image files reside.
-
setFormat
public void setFormat(ImageIOTask.ImageFormat format)
Set the output image format.- Parameters:
format
- an ImageFormat.
-
setOverwrite
public void setOverwrite(boolean overwrite)
Set whether to overwrite a file if there is a naming conflict.- Parameters:
overwrite
- whether to overwrite.
-
setGc
public void setGc(boolean gc)
Set whether to invoke Garbage Collection after each image processed. Defaults to false.- Parameters:
gc
- whether to invoke the garbage collector.
-
setDestDir
public void setDestDir(java.io.File destDir)
Set the destination directory for manipulated images.- Parameters:
destDir
- The destination directory.
-
addImageOperation
public void addImageOperation(ImageOperation instr)
Add an ImageOperation to chain.- Parameters:
instr
- The ImageOperation to append to the chain.
-
addRotate
public void addRotate(Rotate instr)
Add a Rotate ImageOperation to the chain.- Parameters:
instr
- The Rotate operation to add to the chain.- See Also:
Rotate
-
addScale
public void addScale(Scale instr)
Add a Scale ImageOperation to the chain.- Parameters:
instr
- The Scale operation to add to the chain.- See Also:
Scale
-
addDraw
public void addDraw(Draw instr)
Add a Draw ImageOperation to the chain. DrawOperation DataType objects can be nested inside the Draw object.- Parameters:
instr
- The Draw operation to add to the chain.- See Also:
Draw
,DrawOperation
-
add
public void add(ImageOperation instr)
Add an ImageOperation to chain.- Parameters:
instr
- The ImageOperation to append to the chain.- Since:
- Ant 1.7
-
createMapper
public Mapper createMapper() throws BuildException
Defines the mapper to map source to destination files.- Returns:
- a mapper to be configured
- Throws:
BuildException
- if more than one mapper is defined- Since:
- Ant 1.8.0
-
add
public void add(FileNameMapper fileNameMapper)
Add a nested filenamemapper.- Parameters:
fileNameMapper
- the mapper to add.- Since:
- Ant 1.8.0
-
processDir
public int processDir(java.io.File srcDir, java.lang.String[] srcNames, java.io.File dstDir, FileNameMapper mapper)
Executes all the chained ImageOperations on the files inside the directory.- Parameters:
srcDir
- FilesrcNames
- String[]dstDir
- Filemapper
- FileNameMapper- Returns:
- int
- Since:
- Ant 1.8.0
-
processFile
@Deprecated public void processFile(java.io.File file)
Deprecated.this method isn't used anymoreExecutes all the chained ImageOperations on the file specified.- Parameters:
file
- The file to be processed.
-
processFile
public void processFile(java.io.File file, java.io.File newFile)
Executes all the chained ImageOperations on the file specified.- Parameters:
file
- The file to be processed.newFile
- The file to write to.- Since:
- Ant 1.8.0
-
execute
public void execute() throws BuildException
Executes the Task.- Overrides:
execute
in classTask
- Throws:
BuildException
- on error.
-
validateAttributes
protected void validateAttributes() throws BuildException
Ensure we have a consistent and legal set of attributes, and set any internal flags necessary based on different combinations of attributes.- Throws:
BuildException
- on error.
-
-