Class ContentTransformingResource
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.types.DataType
org.apache.tools.ant.types.Resource
org.apache.tools.ant.types.resources.ResourceDecorator
org.apache.tools.ant.types.resources.ContentTransformingResource
- All Implemented Interfaces:
Cloneable,Comparable<Resource>,Iterable<Resource>,ResourceCollection
- Direct Known Subclasses:
CompressedResource
A resource that transforms the content of another resource.
Wraps around another resource, delegates all queries (except getSize) to that other resource but transforms stream content on the fly.
- Since:
- Ant 1.8
-
Field Summary
Fields inherited from class org.apache.tools.ant.types.Resource
MAGIC, UNKNOWN_DATETIME, UNKNOWN_SIZEFields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedno arg constructorprotectedConstructor with another resource to wrap. -
Method Summary
Modifier and TypeMethodDescription<T> TSuppress FileProvider, re-implement AppendableGet an InputStream for the Resource.Get an OutputStream for the Resource.longgetSize()Get the size of this Resource.protected booleanLearn whether the transformation performed allows appends.protected abstract InputStreamGet a content-filtering/transforming InputStream.protected abstract OutputStreamwrapStream(OutputStream out) Get a content-filtering/transforming OutputStream.Methods inherited from class org.apache.tools.ant.types.resources.ResourceDecorator
addConfigured, compareTo, dieOnCircularReference, getLastModified, getName, getResource, hashCode, isDirectory, isExists, isFilesystemOnly, setDirectory, setExists, setLastModified, setName, setRefid, setSizeMethods inherited from class org.apache.tools.ant.types.Resource
asOptional, clone, equals, getMagicNumber, getRef, iterator, size, toLongString, toStringMethods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, tooManyAttributesMethods inherited from class org.apache.tools.ant.ProjectComponent
getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProjectMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface org.apache.tools.ant.types.ResourceCollection
isEmpty, stream
-
Constructor Details
-
ContentTransformingResource
protected ContentTransformingResource()no arg constructor -
ContentTransformingResource
Constructor with another resource to wrap.- Parameters:
other- the resource to wrap.
-
-
Method Details
-
getSize
public long getSize()Get the size of this Resource.- Overrides:
getSizein classResourceDecorator- Returns:
- the size, as a long, 0 if the Resource does not exist (for compatibility with java.io.File), or UNKNOWN_SIZE if not known.
-
getInputStream
Get an InputStream for the Resource.- Overrides:
getInputStreamin classResourceDecorator- Returns:
- an InputStream containing this Resource's content.
- Throws:
IOException- if unable to provide the content of this Resource as a stream.UnsupportedOperationException- if InputStreams are not supported for this Resource type.
-
getOutputStream
Get an OutputStream for the Resource.- Overrides:
getOutputStreamin classResourceDecorator- Returns:
- an OutputStream to which content can be written.
- Throws:
IOException- if unable to provide the content of this Resource as a stream.UnsupportedOperationException- if OutputStreams are not supported for this Resource type.
-
as
Suppress FileProvider, re-implement Appendable- Overrides:
asin classResourceDecorator- Type Parameters:
T- desired type- Parameters:
clazz- a class- Returns:
- resource of a desired type
-
isAppendSupported
protected boolean isAppendSupported()Learn whether the transformation performed allows appends.In general compressed outputs will become invalid if they are appended to, for example.
This implementations returns false.
- Returns:
- boolean false
-
wrapStream
Get a content-filtering/transforming InputStream.- Parameters:
in- InputStream to wrap, will never be null.- Returns:
- a compressed InputStream.
- Throws:
IOException- if there is a problem.
-
wrapStream
Get a content-filtering/transforming OutputStream.- Parameters:
out- OutputStream to wrap, will never be null.- Returns:
- a compressed OutputStream.
- Throws:
IOException- if there is a problem.
-