Package org.gnome.gio
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("io.github.jwharm.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(org.gnome.gio.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 org.gnome.gio.FilterOutputStream
FilterOutputStream.FilterOutputStream$Impl, FilterOutputStream.FilterOutputStreamClassNested classes/interfaces inherited from class org.gnome.gio.OutputStream
OutputStream.OutputStream$Impl, OutputStream.OutputStreamClassNested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback, GObject.ObjectClassNested classes/interfaces inherited from interface org.gnome.gio.Seekable
Seekable.Seekable$Impl, Seekable.SeekableIface -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new BufferedOutputStream.BufferedOutputStream(MemorySegment address) Create a BufferedOutputStream proxy 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()Returns 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 classvoidsetAutoGrow(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 org.gnome.gio.FilterOutputStream
getBaseStream, getCloseBaseStream, setCloseBaseStreamMethods inherited from class org.gnome.gio.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 org.gnome.gobject.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 org.gnome.gobject.TypeInstance
callParent, callParent, cast, getPrivate, readGClass, writeGClassMethods inherited from class org.javagi.base.ProxyInstance
equals, handle, hashCodeMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.javagi.gio.AutoCloseable
close
-
Constructor Details
-
BufferedOutputStream
Create a BufferedOutputStream proxy 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()Creates 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
Returns this instance as if it were its parent type. This is mostly synonymous to the Javasuperkeyword, but will set the native typeclass function pointers to the parent type. When overriding a native virtual method in Java, "chaining up" withsuper.methodName()doesn't work, because it invokes the overridden function pointer again. To chain up, callasParent().methodName(). This will call the native function pointer of this virtual method in the typeclass of the parent type.- Overrides:
asParentin classFilterOutputStream
-
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
-