glibmm 2.31.16.1
Public Member Functions | Static Public Member Functions | Related Functions
Gio::NetworkService Class Reference

A GSocketConnectable for resolving SRV records. More...

#include <giomm/networkservice.h>

Inheritance diagram for Gio::NetworkService:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~NetworkService ()
GNetworkService* gobj ()
 Provides access to the underlying C GObject.
const GNetworkService* gobj () const
 Provides access to the underlying C GObject.
GNetworkService* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
Glib::ustring get_service () const
 Gets srv's service name (eg, "ldap").
Glib::ustring get_protocol () const
 Gets srv's protocol name (eg, "tcp").
Glib::ustring get_domain () const
 Gets the domain that srv serves.
Glib::ustring get_scheme () const
 Get's the URI scheme used to resolve proxies.
void set_scheme (const Glib::ustring& scheme)
 Set's the URI scheme used to resolve proxies.
Glib::PropertyProxy_ReadOnly
< Glib::ustring
property_domain () const
 Network domain, eg, 'example.com'.
Glib::PropertyProxy_ReadOnly
< Glib::ustring
property_protocol () const
 Network protocol, eg 'tcp'.
Glib::PropertyProxy
< Glib::ustring
property_scheme ()
 Network scheme (default is to use service).
Glib::PropertyProxy_ReadOnly
< Glib::ustring
property_scheme () const
 Network scheme (default is to use service).
Glib::PropertyProxy_ReadOnly
< Glib::ustring
property_service () const
 Service name, eg 'ldap'.

Static Public Member Functions

static Glib::RefPtr
< NetworkService
create (const Glib::ustring& service, const Glib::ustring& protocol, const Glib::ustring& domain)

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gio::NetworkServicewrap (GNetworkService* object, bool take_copy=false)
 A Glib::wrap() method for this object.

Detailed Description

A GSocketConnectable for resolving SRV records.

Like NetworkAddress does with hostnames, NetworkService 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 SrvTarget for more information about SRV records, and see SocketConnectable for and example of using the connectable interface.

Since glibmm 2.24:

Constructor & Destructor Documentation

virtual Gio::NetworkService::~NetworkService ( ) [virtual]

Member Function Documentation

static Glib::RefPtr<NetworkService> Gio::NetworkService::create ( const Glib::ustring service,
const Glib::ustring protocol,
const Glib::ustring domain 
) [static]
Glib::ustring Gio::NetworkService::get_domain ( ) const

Gets the domain that srv serves.

This might be either UTF-8 or ASCII-encoded, depending on what srv was created with.

Since glibmm 2.22:
Returns:
srv's domain name.
Glib::ustring Gio::NetworkService::get_protocol ( ) const

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

Since glibmm 2.22:
Returns:
srv's protocol name.
Glib::ustring Gio::NetworkService::get_scheme ( ) const

Get's the URI scheme used to resolve proxies.

By default, the service name is used as scheme.

Since glibmm 2.26:
Returns:
srv's scheme name.
Glib::ustring Gio::NetworkService::get_service ( ) const

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

Since glibmm 2.22:
Returns:
srv's service name.
const GNetworkService* Gio::NetworkService::gobj ( ) const [inline]

Provides access to the underlying C GObject.

Reimplemented from Gio::SocketConnectable.

GNetworkService* Gio::NetworkService::gobj ( ) [inline]

Provides access to the underlying C GObject.

Reimplemented from Gio::SocketConnectable.

GNetworkService* Gio::NetworkService::gobj_copy ( )

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gio::NetworkService::property_domain ( ) const

Network domain, eg, 'example.com'.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gio::NetworkService::property_protocol ( ) const

Network protocol, eg 'tcp'.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gio::NetworkService::property_scheme ( ) const

Network scheme (default is to use service).

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.
Glib::PropertyProxy< Glib::ustring > Gio::NetworkService::property_scheme ( )

Network scheme (default is to use service).

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gio::NetworkService::property_service ( ) const

Service name, eg 'ldap'.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.
void Gio::NetworkService::set_scheme ( const Glib::ustring scheme)

Set's the URI scheme used to resolve proxies.

By default, the service name is used as scheme.

Since glibmm 2.26:
Parameters:
schemeA URI scheme.

Friends And Related Function Documentation

Glib::RefPtr< Gio::NetworkService > wrap ( GNetworkService *  object,
bool  take_copy = false 
) [related]

A Glib::wrap() method for this object.

Parameters:
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns:
A C++ instance that wraps this C instance.