Package org.gnome.gio
Class BufferedOutputStream
java.lang.Object
io.github.jwharm.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:
Proxy
,AutoCloseable
,AutoCloseable
,Seekable
@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(org.gnome.gio.OutputStream)
,
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
Modifier and TypeClassDescriptionstatic class
static class
Inner class implementing a builder pattern to construct a GObject with properties.Nested classes/interfaces inherited from class org.gnome.gio.FilterOutputStream
FilterOutputStream.FilterOutputStreamClass, FilterOutputStream.FilterOutputStreamImpl
Nested classes/interfaces inherited from class org.gnome.gio.OutputStream
OutputStream.OutputStreamClass, OutputStream.OutputStreamImpl
Nested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback, GObject.ObjectClass
Nested classes/interfaces inherited from interface org.gnome.gio.Seekable
Seekable.SeekableIface, Seekable.SeekableImpl
-
Constructor Summary
ConstructorDescriptionBufferedOutputStream
(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 BufferedOutputStream
asParent()
Returns this instance as if it were its parent type.static BufferedOutputStream.Builder
<? extends BufferedOutputStream.Builder> builder()
ABufferedOutputStream.Builder
object constructs aBufferedOutputStream
with the specified properties.boolean
Checks if the buffer automatically grows as data is added.long
Gets the size of the buffer in the this BufferedOutputStream.static MemoryLayout
The memory layout of the native struct.static Type
getType()
Get the GType of the BufferedOutputStream classvoid
setAutoGrow
(boolean autoGrow) Sets whether or not the this BufferedOutputStream's buffer should automatically grow.void
setBufferSize
(long size) Sets the size of the internal buffer tosize
.static BufferedOutputStream
sized
(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, setCloseBaseStream
Methods 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, writevFinish
Methods 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, 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, withProperties
Methods inherited from class org.gnome.gobject.TypeInstance
callParent, callParent, getPrivate, readGClass, writeGClass
Methods inherited from class io.github.jwharm.javagi.base.ProxyInstance
equals, handle, hashCode
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.github.jwharm.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
.
-
-
Method Details
-
getType
-
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 Javasuper
keyword, 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:
asParent
in classFilterOutputStream
-
sized
Creates a new buffered output stream with a given buffer size.- Parameters:
baseStream
- aOutputStream
.size
- agsize
.- Returns:
- a
OutputStream
with an internal buffer set tosize
.
-
getAutoGrow
public boolean getAutoGrow()Checks if the buffer automatically grows as data is added.- Returns:
TRUE
if the this BufferedOutputStream's buffer automatically grows,FALSE
otherwise.
-
getBufferSize
public long getBufferSize()Gets the size of the buffer in the this BufferedOutputStream.- Returns:
- the current size of the buffer.
-
setAutoGrow
public void setAutoGrow(boolean autoGrow) Sets whether or not the this BufferedOutputStream's buffer should automatically grow. IfautoGrow
is 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.Builder
object constructs aBufferedOutputStream
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withBufferedOutputStream.Builder.build()
.
-