Class ThrottledInputStream.Builder
java.lang.Object
org.apache.commons.io.build.AbstractSupplier<ThrottledInputStream, ThrottledInputStream.Builder>
org.apache.commons.io.build.AbstractOriginSupplier<ThrottledInputStream, ThrottledInputStream.Builder>
org.apache.commons.io.build.AbstractStreamBuilder<ThrottledInputStream, ThrottledInputStream.Builder>
org.apache.commons.io.input.ProxyInputStream.AbstractBuilder<ThrottledInputStream, ThrottledInputStream.Builder>
org.apache.commons.io.input.ThrottledInputStream.Builder
- All Implemented Interfaces:
IOSupplier<ThrottledInputStream>
- Enclosing class:
ThrottledInputStream
public static class ThrottledInputStream.Builder
extends ProxyInputStream.AbstractBuilder<ThrottledInputStream, ThrottledInputStream.Builder>
Builds a new
ThrottledInputStream.
Using NIO
ThrottledInputStream in = ThrottledInputStream.builder()
.setPath(Paths.get("MyFile.xml"))
.setMaxBytesPerSecond(100_000)
.get();
Using IO
ThrottledInputStream in = ThrottledInputStream.builder()
.setFile(new File("MyFile.xml"))
.setMaxBytesPerSecond(100_000)
.get();
ThrottledInputStream in = ThrottledInputStream.builder()
.setInputStream(inputStream)
.setMaxBytesPerSecond(100_000)
.get();
- Since:
- 2.16.0
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionget()Builds a newThrottledInputStream.voidsetMaxBytesPerSecond(long maxBytesPerSecond) Sets the maximum bytes per second.Methods inherited from class ProxyInputStream.AbstractBuilder
getAfterRead, setAfterReadMethods inherited from class AbstractStreamBuilder
getBufferSize, getBufferSizeDefault, getCharSequence, getCharset, getCharsetDefault, getFile, getInputStream, getOpenOptions, getOutputStream, getPath, getRandomAccessFile, getReader, getWriter, setBufferSize, setBufferSize, setBufferSizeChecker, setBufferSizeDefault, setBufferSizeMax, setCharset, setCharset, setCharsetDefault, setOpenOptionsMethods inherited from class AbstractOriginSupplier
checkOrigin, getOrigin, hasOrigin, newByteArrayOrigin, newCharSequenceOrigin, newFileOrigin, newFileOrigin, newInputStreamOrigin, newOutputStreamOrigin, newPathOrigin, newPathOrigin, newRandomAccessFileOrigin, newRandomAccessFileOrigin, newReaderOrigin, newURIOrigin, newWriterOrigin, setByteArray, setCharSequence, setFile, setFile, setInputStream, setOrigin, setOutputStream, setPath, setPath, setRandomAccessFile, setRandomAccessFile, setReader, setURI, setWriterMethods inherited from class AbstractSupplier
asThisMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface IOSupplier
asSupplier, getUnchecked
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
get
Builds a newThrottledInputStream.You must set input that supports
AbstractStreamBuilder.getInputStream(), otherwise, this method throws an exception.This builder use the following aspects:
AbstractStreamBuilder.getInputStream()- maxBytesPerSecond
- Returns:
- a new instance.
- Throws:
IllegalStateException- if theoriginisnull.UnsupportedOperationException- if the origin cannot be converted to anInputStream.IOException- if an I/O error occurs.- See Also:
-
setMaxBytesPerSecond
Sets the maximum bytes per second.- Parameters:
maxBytesPerSecond- the maximum bytes per second.
-