gi-gio-2.0.33: Gio bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.Gio.Objects.NetworkService

Description

Like NetworkAddress does with hostnames, GNetworkService provides an easy way to resolve a SRV record, and then attempt to connect to one of the hosts that implements that service, handling service priority/weighting, multiple IP addresses, and multiple address families.

See [structgio.SrvTarget] for more information about SRV records, and see SocketConnectable for an example of using the connectable interface.

Synopsis

Exported types

newtype NetworkService Source #

Memory-managed wrapper type.

Constructors

NetworkService (ManagedPtr NetworkService) 

Instances

Instances details
Eq NetworkService Source # 
Instance details

Defined in GI.Gio.Objects.NetworkService

GObject NetworkService Source # 
Instance details

Defined in GI.Gio.Objects.NetworkService

ManagedPtrNewtype NetworkService Source # 
Instance details

Defined in GI.Gio.Objects.NetworkService

TypedObject NetworkService Source # 
Instance details

Defined in GI.Gio.Objects.NetworkService

Methods

glibType :: IO GType

HasParentTypes NetworkService Source # 
Instance details

Defined in GI.Gio.Objects.NetworkService

IsGValue (Maybe NetworkService) Source #

Convert NetworkService to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.Gio.Objects.NetworkService

Methods

gvalueGType_ :: IO GType

gvalueSet_ :: Ptr GValue -> Maybe NetworkService -> IO ()

gvalueGet_ :: Ptr GValue -> IO (Maybe NetworkService)

type ParentTypes NetworkService Source # 
Instance details

Defined in GI.Gio.Objects.NetworkService

type ParentTypes NetworkService = '[Object, SocketConnectable]

class (GObject o, IsDescendantOf NetworkService o) => IsNetworkService o Source #

Type class for types which can be safely cast to NetworkService, for instance with toNetworkService.

Instances

Instances details
(GObject o, IsDescendantOf NetworkService o) => IsNetworkService o Source # 
Instance details

Defined in GI.Gio.Objects.NetworkService

toNetworkService :: (MonadIO m, IsNetworkService o) => o -> m NetworkService Source #

Cast to NetworkService, for types for which this is known to be safe. For general casts, use castTo.

Methods

getDomain

networkServiceGetDomain Source #

Arguments

:: (HasCallStack, MonadIO m, IsNetworkService a) 
=> a

srv: a NetworkService

-> m Text

Returns: srv's domain name

Gets the domain that srv serves. This might be either UTF-8 or ASCII-encoded, depending on what srv was created with.

Since: 2.22

getProtocol

networkServiceGetProtocol Source #

Arguments

:: (HasCallStack, MonadIO m, IsNetworkService a) 
=> a

srv: a NetworkService

-> m Text

Returns: srv's protocol name

Gets srv's protocol name (eg, "tcp").

Since: 2.22

getScheme

networkServiceGetScheme Source #

Arguments

:: (HasCallStack, MonadIO m, IsNetworkService a) 
=> a

srv: a NetworkService

-> m Text

Returns: srv's scheme name

Gets the URI scheme used to resolve proxies. By default, the service name is used as scheme.

Since: 2.26

getService

networkServiceGetService Source #

Arguments

:: (HasCallStack, MonadIO m, IsNetworkService a) 
=> a

srv: a NetworkService

-> m Text

Returns: srv's service name

Gets srv's service name (eg, "ldap").

Since: 2.22

new

networkServiceNew Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> Text

service: the service type to look up (eg, "ldap")

-> Text

protocol: the networking protocol to use for service (eg, "tcp")

-> Text

domain: the DNS domain to look up the service in

-> m NetworkService

Returns: a new NetworkService

Creates a new NetworkService representing the given service, protocol, and domain. This will initially be unresolved; use the SocketConnectable interface to resolve it.

Since: 2.22

setScheme

networkServiceSetScheme Source #

Arguments

:: (HasCallStack, MonadIO m, IsNetworkService a) 
=> a

srv: a NetworkService

-> Text

scheme: a URI scheme

-> m () 

Set's the URI scheme used to resolve proxies. By default, the service name is used as scheme.

Since: 2.26

Properties

domain

Network domain, for example example.com.

Since: 2.22

constructNetworkServiceDomain :: (IsNetworkService o, MonadIO m) => Text -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “domain” property. This is rarely needed directly, but it is used by new.

getNetworkServiceDomain :: (MonadIO m, IsNetworkService o) => o -> m Text Source #

Get the value of the “domain” property. When overloading is enabled, this is equivalent to

get networkService #domain

protocol

Network protocol, for example tcp.

Since: 2.22

constructNetworkServiceProtocol :: (IsNetworkService o, MonadIO m) => Text -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “protocol” property. This is rarely needed directly, but it is used by new.

getNetworkServiceProtocol :: (MonadIO m, IsNetworkService o) => o -> m Text Source #

Get the value of the “protocol” property. When overloading is enabled, this is equivalent to

get networkService #protocol

scheme

Network scheme (default is to use service).

Since: 2.22

constructNetworkServiceScheme :: (IsNetworkService o, MonadIO m) => Text -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “scheme” property. This is rarely needed directly, but it is used by new.

getNetworkServiceScheme :: (MonadIO m, IsNetworkService o) => o -> m Text Source #

Get the value of the “scheme” property. When overloading is enabled, this is equivalent to

get networkService #scheme

setNetworkServiceScheme :: (MonadIO m, IsNetworkService o) => o -> Text -> m () Source #

Set the value of the “scheme” property. When overloading is enabled, this is equivalent to

set networkService [ #scheme := value ]

service

Service name, for example ldap.

Since: 2.22

constructNetworkServiceService :: (IsNetworkService o, MonadIO m) => Text -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “service” property. This is rarely needed directly, but it is used by new.

getNetworkServiceService :: (MonadIO m, IsNetworkService o) => o -> m Text Source #

Get the value of the “service” property. When overloading is enabled, this is equivalent to

get networkService #service