Package org.gnome.gio
Class UnixCredentialsMessage
java.lang.Object
io.github.jwharm.javagi.base.ProxyInstance
org.gnome.gobject.TypeInstance
org.gnome.gobject.GObject
org.gnome.gio.SocketControlMessage
org.gnome.gio.UnixCredentialsMessage
- All Implemented Interfaces:
Proxy
@Generated("io.github.jwharm.JavaGI")
public class UnixCredentialsMessage
extends SocketControlMessage
This
SocketControlMessage
contains a Credentials
instance. It may be sent using Socket.sendMessage(org.gnome.gio.SocketAddress, org.gnome.gio.OutputVector[], org.gnome.gio.SocketControlMessage[], int, org.gnome.gio.Cancellable)
and received
using Socket.receiveMessage(io.github.jwharm.javagi.base.Out<org.gnome.gio.SocketAddress>, org.gnome.gio.InputVector[], io.github.jwharm.javagi.base.Out<org.gnome.gio.SocketControlMessage[]>, io.github.jwharm.javagi.base.Out<java.lang.Integer>, org.gnome.gio.Cancellable)
over UNIX sockets (ie: sockets in
the G_SOCKET_FAMILY_UNIX
family).
For an easier way to send and receive credentials over
stream-oriented UNIX sockets, see
UnixConnection.sendCredentials(org.gnome.gio.Cancellable)
and
UnixConnection.receiveCredentials(org.gnome.gio.Cancellable)
. To receive credentials of
a foreign process connected to a socket, use
Socket.getCredentials()
.
Since GLib 2.72, GUnixCredentialMessage
is available on all platforms. It
requires underlying system support (such as Windows 10 with AF_UNIX
) at run
time.
Before GLib 2.72, <gio/gunixcredentialsmessage.h>
belonged to the UNIX-specific
GIO interfaces, thus you had to use the gio-unix-2.0.pc
pkg-config file
when using it. This is no longer necessary since GLib 2.72.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Inner class implementing a builder pattern to construct a GObject with properties.static class
Class structure forGUnixCredentialsMessage
.Nested classes/interfaces inherited from class org.gnome.gio.SocketControlMessage
SocketControlMessage.SocketControlMessageClass, SocketControlMessage.SocketControlMessageImpl
Nested classes/interfaces inherited from class org.gnome.gobject.GObject
GObject.NotifyCallback, GObject.ObjectClass
-
Constructor Summary
ConstructorDescriptionCreates a newGUnixCredentialsMessage
with credentials matching the current processes.UnixCredentialsMessage
(MemorySegment address) Create a UnixCredentialsMessage proxy instance for the provided memory address. -
Method Summary
Modifier and TypeMethodDescriptionprotected UnixCredentialsMessage
asParent()
Returns this instance as if it were its parent type.static UnixCredentialsMessage.Builder
<? extends UnixCredentialsMessage.Builder> builder()
AUnixCredentialsMessage.Builder
object constructs aUnixCredentialsMessage
with the specified properties.Gets the credentials stored in this UnixCredentialsMessage.static MemoryLayout
The memory layout of the native struct.static Type
getType()
Get the GType of the UnixCredentialsMessage classstatic boolean
Checks if passingGCredentials
on aGSocket
is supported on this platform.static UnixCredentialsMessage
withCredentials
(Credentials credentials) Creates a newGUnixCredentialsMessage
holdingcredentials
.Methods inherited from class org.gnome.gio.SocketControlMessage
deserialize, getLevel, getMsgType, getSize, serialize
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
-
Constructor Details
-
UnixCredentialsMessage
Create a UnixCredentialsMessage proxy instance for the provided memory address.- Parameters:
address
- the memory address of the native object
-
UnixCredentialsMessage
public UnixCredentialsMessage()Creates a newGUnixCredentialsMessage
with credentials matching the current processes.
-
-
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 classSocketControlMessage
-
withCredentials
Creates a newGUnixCredentialsMessage
holdingcredentials
.- Parameters:
credentials
- AGCredentials
object.- Returns:
- a new
GUnixCredentialsMessage
-
isSupported
public static boolean isSupported()Checks if passingGCredentials
on aGSocket
is supported on this platform.- Returns:
true
if supported,false
otherwise
-
getCredentials
Gets the credentials stored in this UnixCredentialsMessage.- Returns:
- A
GCredentials
instance. Do not free, it is owned by this UnixCredentialsMessage.
-
builder
AUnixCredentialsMessage.Builder
object constructs aUnixCredentialsMessage
with the specified properties. Use the variousset...()
methods to set properties, and finish construction withUnixCredentialsMessage.Builder.build()
.
-