KDNSSD 5.109.0
Signals | Public Member Functions | List of all members
KDNSSD::ServiceTypeBrowser

Browses the service types being published on a domain. More...

#include <KDNSSD/ServiceTypeBrowser>

Signals

void finished ()
 Emitted when the list of published service types has settled.
 
void serviceTypeAdded (const QString &type)
 A new type of service has been found.
 
void serviceTypeRemoved (const QString &type)
 Emitted when there are no more services of this type.
 

Public Member Functions

 ServiceTypeBrowser (const QString &domain=QString(), QObject *parent=nullptr)
 Create a ServiceTypeBrowser for a domain.
 
bool isRunning () const
 This method is unnecessary, since it is safe to call startBrowse() multiple times.
 
QStringList serviceTypes () const
 All the service types currently being published.
 
void startBrowse ()
 Starts browsing.
 

Detailed Description

Browses the service types being published on a domain.

This class is mostly useful for generic utilities for browsing all the published service types on a local network. Applications that wish to find out about available services of a particular type (such as web servers) should use ServiceBrowser.

ServiceTypeBrowser provides a list of all the service types published by at least one service on a given domain.

Author
Jakub Stachowski

Constructor & Destructor Documentation

◆ ServiceTypeBrowser()

KDNSSD::ServiceTypeBrowser::ServiceTypeBrowser ( const QString &  domain = QString(),
QObject *  parent = nullptr 
)
explicit

Create a ServiceTypeBrowser for a domain.

The link-local domain (the LAN subnet for this computer) will be used if no domain is given. DomainBrowser can be used to get a list of browsing domains.

Note that WAN domains may not support service type browsing.

Parameters
domaina browsing domain to search
parentthe parent object (see QObject documentation)
See also
startBrowse() and ServiceBrowser::isAvailable()

Member Function Documentation

◆ finished

void KDNSSD::ServiceTypeBrowser::finished ( )
signal

Emitted when the list of published service types has settled.

This signal is emitted once after startBrowse() is called when the types of all the services that are currently published have been reported (even if no services are available or the DNS-SD service is not available). It is emitted again when a new batch of service types become available or disappear.

For example, if a new host is connected to network and announces services of several new types, they will be reported by several serviceTypeAdded() signals and the whole batch will be concluded by finished().

This signal can be used by applications that just want to get a list of the currently available service types (similar to a directory listing) and do not care about adding or removing service types that appear or disappear later.

See also
serviceTypeAdded() and serviceTypeRemoved()

◆ isRunning()

bool KDNSSD::ServiceTypeBrowser::isRunning ( ) const
inline

This method is unnecessary, since it is safe to call startBrowse() multiple times.

Deprecated:
since 4.0, just call startBrowse() again.

◆ serviceTypeAdded

void KDNSSD::ServiceTypeBrowser::serviceTypeAdded ( const QString &  type)
signal

A new type of service has been found.

Parameters
typethe service type
See also
serviceTypeAdded() and finished()

◆ serviceTypeRemoved

void KDNSSD::ServiceTypeBrowser::serviceTypeRemoved ( const QString &  type)
signal

Emitted when there are no more services of this type.

Warning
This signal is not reliable: it is possible that it will not be emitted even after last service of this type disappeared
Parameters
typethe service type
See also
serviceTypeAdded() and finished()

◆ serviceTypes()

QStringList KDNSSD::ServiceTypeBrowser::serviceTypes ( ) const

All the service types currently being published.

Returns
a list of service types, in the form _type._tcp or _type._udp

◆ startBrowse()

void KDNSSD::ServiceTypeBrowser::startBrowse ( )

Starts browsing.

Only the first call to this function will have any effect.

Browsing stops when the ServiceTypeBrowser object is destroyed.

Warning
The serviceTypeAdded() signal may be emitted before this function returns.
See also
serviceTypeAdded(), serviceTypeRemoved() and finished()