Class BufferedOutputStream
java.lang.Object
org.javagi.base.ProxyInstance
org.gnome.gobject.TypeInstance
org.gnome.gobject.GObject
org.gnome.gio.OutputStream
org.gnome.gio.FilterOutputStream
org.gnome.gio.BufferedOutputStream
- All Implemented Interfaces:
AutoCloseable, Seekable, Proxy, AutoCloseable
@Generated("org.javagi.JavaGI")
public class BufferedOutputStream
extends FilterOutputStream
implements Seekable
Buffered output stream implements FilterOutputStream and provides
for buffered writes.
By default, GBufferedOutputStream's buffer size is set at 4 kilobytes.
To create a buffered output stream, use BufferedOutputStream(),
or sized(OutputStream, long) to specify the buffer's size
at construction.
To get the size of a buffer within a buffered input stream, use
getBufferSize(). To change the size of a
buffered output stream's buffer, use setBufferSize(long).
Note that the buffer's size cannot be reduced below the size of the data within the buffer.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic classInner class implementing a builder pattern to construct a GObject with properties.Nested classes/interfaces inherited from class FilterOutputStream
FilterOutputStream.FilterOutputStream$Impl, FilterOutputStream.FilterOutputStreamClassNested classes/interfaces inherited from class OutputStream
OutputStream.OutputStream$Impl, OutputStream.OutputStreamClassNested classes/interfaces inherited from class GObject
GObject.NotifyCallback, GObject.ObjectClassNested classes/interfaces inherited from interface Seekable
Seekable.Seekable$Impl, Seekable.SeekableIface -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new BufferedOutputStream.BufferedOutputStream(MemorySegment address) Create a BufferedOutputStream instance for the provided memory address.BufferedOutputStream(OutputStream baseStream) Creates a new buffered output stream for a base stream. -
Method Summary
Modifier and TypeMethodDescriptionprotected BufferedOutputStreamasParent()Return this instance as if it were its parent type.static BufferedOutputStream.Builder<? extends BufferedOutputStream.Builder> builder()ABufferedOutputStream.Builderobject constructs aBufferedOutputStreamwith the specified properties.booleanChecks if the buffer automatically grows as data is added.longGets the size of the buffer in thestream.static MemoryLayoutThe memory layout of the native struct.static @Nullable TypegetType()Get the GType of the BufferedOutputStream class.voidsetAutoGrow(boolean autoGrow) Sets whether or not thestream'sbuffer should automatically grow.voidsetBufferSize(long size) Sets the size of the internal buffer tosize.static OutputStreamsized(OutputStream baseStream, long size) Creates a new buffered output stream with a given buffer size.Methods inherited from class FilterOutputStream
getBaseStream, getCloseBaseStream, setCloseBaseStreamMethods inherited from class OutputStream
clearPending, close, closeAsync, closeFinish, closeFn, flush, flushAsync, flushFinish, hasPending, isClosed, isClosing, printf, setPending, splice, splice, spliceAsync, spliceAsync, spliceFinish, write, writeAll, writeAllAsync, writeAllFinish, writeAsync, writeBytes, writeBytesAsync, writeBytesFinish, writeFinish, writev, writevAll, writevAllAsync, writevAllFinish, writevAsync, writevFinishMethods inherited from class GObject
addToggleRef, addWeakPointer, bindProperty, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, connect, constructed, disconnect, dispatchPropertiesChanged, dispose, dupData, dupQdata, emit, emitNotify, finalize_, forceFloating, freezeNotify, get, getData, getProperty, getProperty, getProperty, getQdata, getv, interfaceFindProperty, interfaceInstallProperty, interfaceListProperties, isFloating, newInstance, newInstance, newv, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, removeWeakPointer, replaceData, replaceQdata, runDispose, set, setData, setDataFull, setProperty, setProperty, setProperty, setQdata, setQdataFull, setv, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref, withPropertiesMethods inherited from class TypeInstance
callParent, callParent, cast, getPrivate, readGClass, writeGClassMethods inherited from class ProxyInstance
equals, handle, hashCodeMethods inherited from class Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface AutoCloseable
close
-
Constructor Details
-
BufferedOutputStream
Create a BufferedOutputStream instance for the provided memory address.- Parameters:
address- the memory address of the native object
-
BufferedOutputStream
Creates a new buffered output stream for a base stream.- Parameters:
baseStream- aOutputStream.
-
BufferedOutputStream
public BufferedOutputStream()Create a new BufferedOutputStream.
-
-
Method Details
-
getType
Get the GType of the BufferedOutputStream class.- Returns:
- the GType
-
getMemoryLayout
The memory layout of the native struct.- Returns:
- the memory layout
-
asParent
Return this instance as if it were its parent type. Comparable to the Javasuperkeyword, but ensures the parent typeclass is also used in native code.- Overrides:
asParentin classFilterOutputStream- Returns:
- the instance as if it were its parent type
-
sized
Creates a new buffered output stream with a given buffer size.- Parameters:
baseStream- aOutputStream.size- agsize.- Returns:
- a
OutputStreamwith an internal buffer set tosize.
-
getAutoGrow
public boolean getAutoGrow()Checks if the buffer automatically grows as data is added.- Returns:
TRUEif thestream'sbuffer automatically grows,FALSEotherwise.
-
getBufferSize
public long getBufferSize()Gets the size of the buffer in thestream.- Returns:
- the current size of the buffer.
-
setAutoGrow
public void setAutoGrow(boolean autoGrow) Sets whether or not thestream'sbuffer should automatically grow. IfautoGrowis true, then each write will just make the buffer larger, and you must manually flush the buffer to actually write out the data to the underlying stream.- Parameters:
autoGrow- agboolean.
-
setBufferSize
public void setBufferSize(long size) Sets the size of the internal buffer tosize.- Parameters:
size- agsize.
-
builder
ABufferedOutputStream.Builderobject constructs aBufferedOutputStreamwith the specified properties. Use the variousset...()methods to set properties, and finish construction withBufferedOutputStream.Builder.build().- Returns:
- the builder object
-