Package ch.bailu.gtk.gio
Class Proxy
java.lang.Object
ch.bailu.gtk.type.Type
ch.bailu.gtk.type.Pointer
ch.bailu.gtk.gobject.Object
ch.bailu.gtk.type.Interface
ch.bailu.gtk.gio.Proxy
- All Implemented Interfaces:
PointerInterface
A #GProxy handles connecting to a remote host via a given type of
proxy server. It is implemented by the 'gio-proxy' extension point.
The extensions are named after their proxy protocol name. As an
example, a SOCKS5 proxy implementation can be retrieved with the
name 'socks5' using the function
g_io_extension_point_get_extension_by_name().
proxy server. It is implemented by the 'gio-proxy' extension point.
The extensions are named after their proxy protocol name. As an
example, a SOCKS5 proxy implementation can be retrieved with the
name 'socks5' using the function
g_io_extension_point_get_extension_by_name().
-
Nested Class Summary
Nested classes/interfaces inherited from class ch.bailu.gtk.gobject.Object
Object.OnBindingTransformFunc, Object.OnDestroyNotify, Object.OnDuplicateFunc, Object.OnNotify, Object.OnToggleNotify, Object.OnWeakNotify
-
Field Summary
Fields inherited from class ch.bailu.gtk.gobject.Object
SIGNAL_ON_NOTIFY
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionconnect
(IOStream connection, ProxyAddress proxy_address, Cancellable cancellable) Given @connection to communicate with a proxy (eg, a
#GSocketConnection that is connected to the proxy server), this
does the necessary handshake to connect to @proxy_address, and if
required, wraps the #GIOStream to handle proxy payload.void
connectAsync
(IOStream connection, ProxyAddress proxy_address, Cancellable cancellable, Proxy.OnAsyncReadyCallback callback, Pointer user_data) Asynchronous version of g_proxy_connect().connectFinish
(AsyncResult result) See g_proxy_connect().static ClassHandler
static Proxy
getDefaultForProtocol
(Str protocol) Find the `gio-proxy` extension point for a proxy implementation that supports
the specified protocol.static int
static long
static TypeSystem.TypeSize
static long
static TypeSystem.TypeSize
boolean
Some proxy protocols expect to be passed a hostname, which they
will resolve to an IP address themselves.Methods inherited from class ch.bailu.gtk.gobject.Object
addToggleRef, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, disconnect, disconnect, dupData, dupData, dupQdata, forceFloating, freezeNotify, get, get, getData, getData, getProperty, getProperty, getQdata, interfaceFindProperty, interfaceInstallProperty, isFloating, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, replaceData, replaceData, replaceQdata, runDispose, set, set, setData, setData, setDataFull, setDataFull, setProperty, setProperty, setQdata, setQdataFull, stealData, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref
Methods inherited from class ch.bailu.gtk.type.Pointer
asCPointer, cast, connectSignal, disconnectSignals, disconnectSignals, equals, hashCode, throwIfNull, throwNullPointerException, toString, unregisterCallbacks, unregisterCallbacks
Methods inherited from class ch.bailu.gtk.type.Type
asCPointer, asCPointer, asCPointerNotNull, asJnaPointer, asJnaPointer, asPointer, asPointer, cast, cast, throwIfNull
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface ch.bailu.gtk.type.PointerInterface
asCPointerNotNull, asJnaPointer, asPointer, isNotNull, isNull
-
Constructor Details
-
Proxy
-
-
Method Details
-
getClassHandler
-
connect
public IOStream connect(@Nonnull IOStream connection, @Nonnull ProxyAddress proxy_address, @Nullable Cancellable cancellable) throws AllocationError Given @connection to communicate with a proxy (eg, a
#GSocketConnection that is connected to the proxy server), this
does the necessary handshake to connect to @proxy_address, and if
required, wraps the #GIOStream to handle proxy payload.- Parameters:
connection
- a #GIOStreamproxy_address
- a #GProxyAddresscancellable
- a #GCancellable- Returns:
- a #GIOStream that will replace @connection. This might be the same as @connection, in which case a reference will be added.
- Throws:
AllocationError
-
connectAsync
public void connectAsync(@Nonnull IOStream connection, @Nonnull ProxyAddress proxy_address, @Nullable Cancellable cancellable, Proxy.OnAsyncReadyCallback callback, @Nullable Pointer user_data) Asynchronous version of g_proxy_connect().- Parameters:
connection
- a #GIOStreamproxy_address
- a #GProxyAddresscancellable
- a #GCancellablecallback
- a #GAsyncReadyCallbackuser_data
- callback data
-
connectFinish
See g_proxy_connect().- Parameters:
result
- a #GAsyncResult- Returns:
- a #GIOStream.
- Throws:
AllocationError
-
supportsHostname
public boolean supportsHostname()Some proxy protocols expect to be passed a hostname, which they
will resolve to an IP address themselves. Others, like SOCKS4, do
not allow this. This function will return %FALSE if @proxy is
implementing such a protocol. When %FALSE is returned, the caller
should resolve the destination hostname first, and then pass a
#GProxyAddress containing the stringified IP address to
g_proxy_connect() or g_proxy_connect_async().- Returns:
- %TRUE if hostname resolution is supported.
-
getDefaultForProtocol
Find the `gio-proxy` extension point for a proxy implementation that supports
the specified protocol.- Parameters:
protocol
- the proxy protocol name (e.g. http, socks, etc)- Returns:
- return a #GProxy or NULL if protocol is not supported.
-
getTypeID
public static long getTypeID() -
getParentTypeID
public static long getParentTypeID() -
getTypeSize
-
getParentTypeSize
-
getInstanceSize
public static int getInstanceSize()
-