Package org.apache.commons.io.output
Class WriterOutputStream.Builder
- java.lang.Object
-
- org.apache.commons.io.build.AbstractSupplier<T,B>
-
- org.apache.commons.io.build.AbstractOriginSupplier<T,B>
-
- org.apache.commons.io.build.AbstractStreamBuilder<WriterOutputStream,WriterOutputStream.Builder>
-
- org.apache.commons.io.output.WriterOutputStream.Builder
-
- All Implemented Interfaces:
IOSupplier<WriterOutputStream>
- Enclosing class:
- WriterOutputStream
public static class WriterOutputStream.Builder extends AbstractStreamBuilder<WriterOutputStream,WriterOutputStream.Builder>
Builds a newWriterOutputStream
.For example:
WriterOutputStream s = WriterOutputStream.builder() .setPath(path) .setBufferSize(8192) .setCharset(StandardCharsets.UTF_8) .setWriteImmediately(false) .get();
- Since:
- 2.12.0
- See Also:
get()
-
-
Constructor Summary
Constructors Constructor Description Builder()
Constructs a new Builder.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description WriterOutputStream
get()
Builds a newWriterOutputStream
.WriterOutputStream.Builder
setCharset(java.lang.String charset)
Sets the Charset.WriterOutputStream.Builder
setCharset(java.nio.charset.Charset charset)
Sets the Charset.WriterOutputStream.Builder
setCharsetDecoder(java.nio.charset.CharsetDecoder charsetDecoder)
Sets the charset decoder.WriterOutputStream.Builder
setWriteImmediately(boolean writeImmediately)
Sets whether the output buffer will be flushed after each write operation (true
), meaning all available data will be written to the underlyingWriter
immediately.-
Methods inherited from class org.apache.commons.io.build.AbstractStreamBuilder
getBufferSize, getBufferSizeDefault, getCharSequence, getCharset, getCharsetDefault, getFile, getInputStream, getOpenOptions, getOutputStream, getPath, getRandomAccessFile, getReader, getWriter, setBufferSize, setBufferSize, setBufferSizeChecker, setBufferSizeDefault, setBufferSizeMax, setCharsetDefault, setOpenOptions
-
Methods inherited from class org.apache.commons.io.build.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, setWriter
-
Methods inherited from class org.apache.commons.io.build.AbstractSupplier
asThis
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.commons.io.function.IOSupplier
asSupplier, getUnchecked
-
-
-
-
Constructor Detail
-
Builder
public Builder()
Constructs a new Builder.
-
-
Method Detail
-
get
public WriterOutputStream get() throws java.io.IOException
Builds a newWriterOutputStream
.You must set input that supports
AbstractStreamBuilder.getWriter()
on this builder, otherwise, this method throws an exception.This builder use the following aspects:
AbstractStreamBuilder.getWriter()
AbstractStreamBuilder.getBufferSize()
- charsetDecoder
- writeImmediately
- Returns:
- a new instance.
- Throws:
java.lang.UnsupportedOperationException
- if the origin cannot provide a Writer.java.io.IOException
- if an I/O error occurs.- See Also:
AbstractStreamBuilder.getWriter()
-
setCharset
public WriterOutputStream.Builder setCharset(java.nio.charset.Charset charset)
Description copied from class:AbstractStreamBuilder
Sets the Charset.Subclasses may ignore this setting.
- Overrides:
setCharset
in classAbstractStreamBuilder<WriterOutputStream,WriterOutputStream.Builder>
- Parameters:
charset
- the Charset, null resets to the default.- Returns:
this
instance.
-
setCharset
public WriterOutputStream.Builder setCharset(java.lang.String charset)
Description copied from class:AbstractStreamBuilder
Sets the Charset.Subclasses may ignore this setting.
- Overrides:
setCharset
in classAbstractStreamBuilder<WriterOutputStream,WriterOutputStream.Builder>
- Parameters:
charset
- the Charset name, null resets to the default.- Returns:
this
instance.
-
setCharsetDecoder
public WriterOutputStream.Builder setCharsetDecoder(java.nio.charset.CharsetDecoder charsetDecoder)
Sets the charset decoder.- Parameters:
charsetDecoder
- the charset decoder.- Returns:
this
instance.
-
setWriteImmediately
public WriterOutputStream.Builder setWriteImmediately(boolean writeImmediately)
Sets whether the output buffer will be flushed after each write operation (true
), meaning all available data will be written to the underlyingWriter
immediately. Iffalse
, the output buffer will only be flushed when it overflows or whenWriterOutputStream.flush()
orWriterOutputStream.close()
is called.- Parameters:
writeImmediately
- Iftrue
the output buffer will be flushed after each write operation, meaning all available data will be written to the underlyingWriter
immediately. Iffalse
, the output buffer will only be flushed when it overflows or whenWriterOutputStream.flush()
orWriterOutputStream.close()
is called.- Returns:
this
instance.
-
-