Class TcpConnection
- All Implemented Interfaces:
AutoCloseable, Proxy, AutoCloseable
- Direct Known Subclasses:
TcpWrapperConnection
This is the subclass of
SocketConnection that is created
for TCP/IP sockets.- Since:
- 2.22
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classTcpConnection.Builder<B extends TcpConnection.Builder<B>>Inner class implementing a builder pattern to construct a GObject with properties.static classNested classes/interfaces inherited from class SocketConnection
SocketConnection.SocketConnectionClassNested classes/interfaces inherited from class IOStream
IOStream.IOStream$Impl, IOStream.IOStreamClassNested classes/interfaces inherited from class GObject
GObject.NotifyCallback, GObject.ObjectClass -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new TcpConnection.TcpConnection(MemorySegment address) Create a TcpConnection instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionprotected TcpConnectionasParent()Return this instance as if it were its parent type.static TcpConnection.Builder<? extends TcpConnection.Builder> builder()ATcpConnection.Builderobject constructs aTcpConnectionwith the specified properties.booleanChecks if graceful disconnects are used.static MemoryLayoutThe memory layout of the native struct.static @Nullable TypegetType()Get the GType of the TcpConnection class.voidsetGracefulDisconnect(boolean gracefulDisconnect) This enables graceful disconnects on close.Methods inherited from class SocketConnection
connect, connectAsync, connectFinish, factoryLookupType, factoryRegisterType, getLocalAddress, getRemoteAddress, getSocket, isConnectedMethods inherited from class IOStream
clearPending, close, closeAsync, closeFinish, closeFn, getInputStream, getOutputStream, hasPending, isClosed, setPending, spliceAsync, spliceAsync, spliceFinishMethods 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
-
TcpConnection
Create a TcpConnection instance for the provided memory address.- Parameters:
address- the memory address of the native object
-
TcpConnection
public TcpConnection()Create a new TcpConnection.
-
-
Method Details
-
getType
-
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 classSocketConnection- Returns:
- the instance as if it were its parent type
-
getGracefulDisconnect
public boolean getGracefulDisconnect()Checks if graceful disconnects are used. See g_tcp_connection_set_graceful_disconnect().- Returns:
trueif graceful disconnect is used on close,falseotherwise- Since:
- 2.22
-
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- Since:
- 2.22
-
builder
ATcpConnection.Builderobject constructs aTcpConnectionwith the specified properties. Use the variousset...()methods to set properties, and finish construction withTcpConnection.Builder.build().- Returns:
- the builder object
-