Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | None |
Language | Haskell2010 |
ProxyResolver
provides synchronous and asynchronous network proxy
resolution. ProxyResolver
is used within SocketClient
through
the method socketConnectableProxyEnumerate
.
Implementations of ProxyResolver
based on libproxy and GNOME settings can
be found in glib-networking. GIO comes with an implementation for use inside
Flatpak portals.
Since: 2.26
Synopsis
- newtype ProxyResolver = ProxyResolver (ManagedPtr ProxyResolver)
- class (GObject o, IsDescendantOf ProxyResolver o) => IsProxyResolver o
- toProxyResolver :: (MonadIO m, IsProxyResolver o) => o -> m ProxyResolver
- proxyResolverGetDefault :: (HasCallStack, MonadIO m) => m ProxyResolver
- proxyResolverIsSupported :: (HasCallStack, MonadIO m, IsProxyResolver a) => a -> m Bool
- proxyResolverLookup :: (HasCallStack, MonadIO m, IsProxyResolver a, IsCancellable b) => a -> Text -> Maybe b -> m [Text]
- proxyResolverLookupAsync :: (HasCallStack, MonadIO m, IsProxyResolver a, IsCancellable b) => a -> Text -> Maybe b -> Maybe AsyncReadyCallback -> m ()
- proxyResolverLookupFinish :: (HasCallStack, MonadIO m, IsProxyResolver a, IsAsyncResult b) => a -> b -> m [Text]
Exported types
newtype ProxyResolver Source #
Memory-managed wrapper type.
Instances
Eq ProxyResolver Source # | |
Defined in GI.Gio.Interfaces.ProxyResolver (==) :: ProxyResolver -> ProxyResolver -> Bool # (/=) :: ProxyResolver -> ProxyResolver -> Bool # | |
IsGValue ProxyResolver Source # | Convert |
Defined in GI.Gio.Interfaces.ProxyResolver toGValue :: ProxyResolver -> IO GValue # fromGValue :: GValue -> IO ProxyResolver # | |
ManagedPtrNewtype ProxyResolver Source # | |
Defined in GI.Gio.Interfaces.ProxyResolver | |
TypedObject ProxyResolver Source # | |
Defined in GI.Gio.Interfaces.ProxyResolver | |
GObject ProxyResolver Source # | |
Defined in GI.Gio.Interfaces.ProxyResolver | |
HasParentTypes ProxyResolver Source # | |
Defined in GI.Gio.Interfaces.ProxyResolver | |
type ParentTypes ProxyResolver Source # | |
Defined in GI.Gio.Interfaces.ProxyResolver |
class (GObject o, IsDescendantOf ProxyResolver o) => IsProxyResolver o Source #
Type class for types which can be safely cast to ProxyResolver
, for instance with toProxyResolver
.
Instances
(GObject o, IsDescendantOf ProxyResolver o) => IsProxyResolver o Source # | |
Defined in GI.Gio.Interfaces.ProxyResolver |
toProxyResolver :: (MonadIO m, IsProxyResolver o) => o -> m ProxyResolver Source #
Cast to ProxyResolver
, for types for which this is known to be safe. For general casts, use castTo
.
Methods
Overloaded methods
getDefault
proxyResolverGetDefault Source #
:: (HasCallStack, MonadIO m) | |
=> m ProxyResolver | Returns: the default |
Gets the default ProxyResolver
for the system.
Since: 2.26
isSupported
proxyResolverIsSupported Source #
:: (HasCallStack, MonadIO m, IsProxyResolver a) | |
=> a |
|
-> m Bool | Returns: |
Checks if resolver
can be used on this system. (This is used
internally; proxyResolverGetDefault
will only return a proxy
resolver that returns True
for this method.)
Since: 2.26
lookup
:: (HasCallStack, MonadIO m, IsProxyResolver a, IsCancellable b) | |
=> a |
|
-> Text |
|
-> Maybe b |
|
-> m [Text] | Returns: A
NULL-terminated array of proxy URIs. Must be freed
with |
Looks into the system proxy configuration to determine what proxy,
if any, to use to connect to uri
. The returned proxy URIs are of
the form <protocol>://[user[:password]@]host:port
or
direct://
, where <protocol> could be http, rtsp, socks
or other proxying protocol.
If you don't know what network protocol is being used on the
socket, you should use none
as the URI protocol.
In this case, the resolver might still return a generic proxy type
(such as SOCKS), but would not return protocol-specific proxy types
(such as http).
direct://
is used when no proxy is needed.
Direct connection should not be attempted unless it is part of the
returned array of proxies.
Since: 2.26
lookupAsync
proxyResolverLookupAsync Source #
:: (HasCallStack, MonadIO m, IsProxyResolver a, IsCancellable b) | |
=> a |
|
-> Text |
|
-> Maybe b |
|
-> Maybe AsyncReadyCallback |
|
-> m () |
Asynchronous lookup of proxy. See proxyResolverLookup
for more
details.
Since: 2.26
lookupFinish
proxyResolverLookupFinish Source #
:: (HasCallStack, MonadIO m, IsProxyResolver a, IsAsyncResult b) | |
=> a |
|
-> b |
|
-> m [Text] | Returns: A
NULL-terminated array of proxy URIs. Must be freed
with |
Call this function to obtain the array of proxy URIs when
proxyResolverLookupAsync
is complete. See
proxyResolverLookup
for more details.
Since: 2.26