pub trait ProxyResolverExt: 'static {
    // Required methods
    fn is_supported(&self) -> bool;
    fn lookup(
        &self,
        uri: &str,
        cancellable: Option<&impl IsA<Cancellable>>
    ) -> Result<Vec<GString>, Error>;
    fn lookup_async<P: FnOnce(Result<Vec<GString>, Error>) + 'static>(
        &self,
        uri: &str,
        cancellable: Option<&impl IsA<Cancellable>>,
        callback: P
    );
    fn lookup_future(
        &self,
        uri: &str
    ) -> Pin<Box_<dyn Future<Output = Result<Vec<GString>, Error>> + 'static>>;
}
Expand description

Required Methods§

source

fn is_supported(&self) -> bool

Checks if self can be used on this system. (This is used internally; ProxyResolver::default() will only return a proxy resolver that returns true for this method.)

Returns

true if self is supported.

source

fn lookup( &self, uri: &str, cancellable: Option<&impl IsA<Cancellable>> ) -> Result<Vec<GString>, Error>

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 ``://[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.

uri

a URI representing the destination to connect to

cancellable

a Cancellable, or None

Returns

A NULL-terminated array of proxy URIs. Must be freed with g_strfreev().

source

fn lookup_async<P: FnOnce(Result<Vec<GString>, Error>) + 'static>( &self, uri: &str, cancellable: Option<&impl IsA<Cancellable>>, callback: P )

Asynchronous lookup of proxy. See lookup() for more details.

uri

a URI representing the destination to connect to

cancellable

a Cancellable, or None

callback

callback to call after resolution completes

source

fn lookup_future( &self, uri: &str ) -> Pin<Box_<dyn Future<Output = Result<Vec<GString>, Error>> + 'static>>

Implementors§