Package org.alfresco.repo.content
Class LimitedStreamCopier
java.lang.Object
org.alfresco.repo.content.LimitedStreamCopier
This class is a simple utility to copy bytes from an
InputStream to an OutputStream.
The copy can be performed with an optional byte limit and as soon as this limit is reached,
the copy will be stopped immediately and a ContentLimitViolationException will be thrown.- Since:
- Thor
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal intcopyStreams(InputStream in, OutputStream out, long sizeLimit) Copy of the the Spring FileCopyUtils, but does not silently absorb IOExceptions when the streams are closed.final longcopyStreamsLong(InputStream in, OutputStream out, long sizeLimit)
-
Constructor Details
-
LimitedStreamCopier
public LimitedStreamCopier()
-
-
Method Details
-
copyStreams
Copy of the the Spring FileCopyUtils, but does not silently absorb IOExceptions when the streams are closed. We require the stream write to happen successfully. Both streams are closed but any IOExceptions are thrown- Parameters:
in- the stream from which to read content.out- the stream to which to write content.sizeLimit- the maximum number of bytes that will be copied between the streams before aContentLimitViolationExceptionwill be thrown. A negative number or zero will be deemed to mean 'no limit'.- Throws:
IOException
-
copyStreamsLong
public final long copyStreamsLong(InputStream in, OutputStream out, long sizeLimit) throws IOException - Throws:
IOException
-