Package org.gnome.gio
Class TcpConnection
- All Implemented Interfaces:
Proxy
,AutoCloseable
,AutoCloseable
- Direct Known Subclasses:
TcpWrapperConnection
This is the subclass of
SocketConnection
that is created
for TCP/IP sockets.-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
TcpConnection.Builder<B extends TcpConnection.Builder<B>>
Inner class implementing a builder pattern to construct a GObject with properties.static class
Nested classes/interfaces inherited from class org.gnome.gio.SocketConnection
SocketConnection.SocketConnectionClass
Nested classes/interfaces inherited from class org.gnome.gio.IOStream
IOStream.IOStreamClass, IOStream.IOStreamImpl
Nested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback, GObject.ObjectClass
-
Constructor Summary
ConstructorDescriptionTcpConnection
(MemorySegment address) Create a TcpConnection proxy instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionprotected TcpConnection
asParent()
Returns this instance as if it were its parent type.static TcpConnection.Builder
<? extends TcpConnection.Builder> builder()
ATcpConnection.Builder
object constructs aTcpConnection
with the specified properties.boolean
Checks if graceful disconnects are used.static MemoryLayout
The memory layout of the native struct.static Type
getType()
Get the GType of the TcpConnection classvoid
setGracefulDisconnect
(boolean gracefulDisconnect) This enables graceful disconnects on close.Methods inherited from class org.gnome.gio.SocketConnection
connect, connectAsync, connectFinish, factoryLookupType, factoryRegisterType, getLocalAddress, getRemoteAddress, getSocket, isConnected
Methods inherited from class org.gnome.gio.IOStream
clearPending, close, closeAsync, closeFinish, closeFn, getInputStream, getOutputStream, hasPending, isClosed, setPending, spliceAsync, spliceAsync, spliceFinish
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
-
TcpConnection
Create a TcpConnection proxy instance for the provided memory address.- Parameters:
address
- the memory address of the native object
-
-
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 classSocketConnection
-
getGracefulDisconnect
public boolean getGracefulDisconnect()Checks if graceful disconnects are used. See g_tcp_connection_set_graceful_disconnect().- Returns:
true
if graceful disconnect is used on close,false
otherwise
-
setGracefulDisconnect
public void setGracefulDisconnect(boolean gracefulDisconnect) This enables graceful disconnects on close. A graceful disconnect means that we signal the receiving end that the connection is terminated and wait for it to close the connection before closing the connection.A graceful disconnect means that we can be sure that we successfully sent all the outstanding data to the other end, or get an error reported. However, it also means we have to wait for all the data to reach the other side and for it to acknowledge this by closing the socket, which may take a while. For this reason it is disabled by default.
- Parameters:
gracefulDisconnect
- Whether to do graceful disconnects or not
-
builder
ATcpConnection.Builder
object constructs aTcpConnection
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withTcpConnection.Builder.build()
.
-