• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdelibs-4.14.38 API Reference
  • KDE Home
  • Contact Us
 

DNSSD

  • dnssd
publicservice.h
Go to the documentation of this file.
1/* This file is part of the KDE project
2 *
3 * Copyright (C) 2004, 2005 Jakub Stachowski <qbast@go2.pl>
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
14 *
15 * You should have received a copy of the GNU Library General Public License
16 * along with this library; see the file COPYING.LIB. If not, write to
17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 * Boston, MA 02110-1301, USA.
19 */
20
21#ifndef DNSSDPUBLICSERVICE_H
22#define DNSSDPUBLICSERVICE_H
23
24#include <QtCore/QObject>
25#include <dnssd/servicebase.h>
26#include <QtCore/QStringList>
27
28namespace DNSSD
29{
30class PublicServicePrivate;
31
58
59class KDNSSD_EXPORT PublicService : public QObject, public ServiceBase
60{
61 Q_OBJECT
62
63public:
91 explicit PublicService(const QString& name = QString(),
92 const QString& type = QString(),
93 unsigned int port = 0,
94 const QString& domain = QString(),
95 const QStringList& subtypes = QStringList());
96
97 ~PublicService();
98
107 void stop();
108
120 bool publish();
121
128 bool isPublished() const;
129
137 void publishAsync();
138
149 void setTextData(const QMap<QString,QByteArray>& textData);
150
159 void setServiceName(const QString &serviceName);
160
171 void setType(const QString& type);
172
184 void setSubTypes(const QStringList& subtypes);
185
194 void setPort(unsigned short port);
195
207 void setDomain(const QString& domain);
208
214 QStringList subtypes() const;
215
216Q_SIGNALS:
224 void published(bool successful);
225
226private:
227 friend class PublicServicePrivate;
228
229protected:
230 virtual void virtual_hook(int, void*);
231};
232
233
234}
235
236#endif
DNSSD::PublicService::subtypes
QStringList subtypes() const
The subtypes of service.
Definition dummy-publicservice.cpp:69
DNSSD::PublicService::isPublished
bool isPublished() const
Whether the service is currently published.
Definition dummy-publicservice.cpp:74
DNSSD::PublicService::PublicService
PublicService(const QString &name=QString(), const QString &type=QString(), unsigned int port=0, const QString &domain=QString(), const QStringList &subtypes=QStringList())
Creates a service description that can be published.
Definition dummy-publicservice.cpp:28
DNSSD::PublicService::PublicServicePrivate
friend class PublicServicePrivate
Definition publicservice.h:227
DNSSD::PublicService::setPort
void setPort(unsigned short port)
Sets the port.
Definition dummy-publicservice.cpp:64
DNSSD::PublicService::virtual_hook
virtual void virtual_hook(int, void *)
Definition dummy-publicservice.cpp:92
DNSSD::PublicService::setSubTypes
void setSubTypes(const QStringList &subtypes)
Sets the subtypetypes of the service.
Definition dummy-publicservice.cpp:59
DNSSD::PublicService::publishAsync
void publishAsync()
Publish the service asynchronously.
Definition dummy-publicservice.cpp:87
DNSSD::PublicService::publish
bool publish()
Publish the service synchronously.
Definition dummy-publicservice.cpp:79
DNSSD::PublicService::published
void published(bool successful)
Emitted when publishing is complete.
DNSSD::PublicService::setTextData
void setTextData(const QMap< QString, QByteArray > &textData)
Sets new text properties.
Definition dummy-publicservice.cpp:49
DNSSD::PublicService::stop
void stop()
Stops publishing or aborts an incomplete publish request.
Definition dummy-publicservice.cpp:84
DNSSD::PublicService::setType
void setType(const QString &type)
Sets the service type.
Definition dummy-publicservice.cpp:54
DNSSD::PublicService::setServiceName
void setServiceName(const QString &serviceName)
Sets the name of the service.
Definition dummy-publicservice.cpp:39
DNSSD::PublicService::setDomain
void setDomain(const QString &domain)
Sets the domain where the service is published.
Definition dummy-publicservice.cpp:44
DNSSD::ServiceBase::domain
QString domain() const
The domain that the service belongs to.
Definition servicebase.cpp:54
DNSSD::ServiceBase::textData
QMap< QString, QByteArray > textData() const
Additional text data associated with the service.
Definition servicebase.cpp:68
DNSSD::ServiceBase::serviceName
QString serviceName() const
The name of the service.
Definition servicebase.cpp:44
DNSSD::ServiceBase::port
unsigned short port() const
The port number of the service.
Definition servicebase.cpp:64
DNSSD::ServiceBase::type
QString type() const
The type of the service.
Definition servicebase.cpp:49
DNSSD::ServiceBase::ServiceBase
ServiceBase(const QString &name=QString(), const QString &type=QString(), const QString &domain=QString(), const QString &host=QString(), unsigned short port=0)
Creates a ServiceBase object.
Definition servicebase.cpp:30
QMap
QObject
DNSSD
Definition domainbrowser.h:29
servicebase.h
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Tue Mar 25 2025 00:00:00 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

DNSSD

Skip menu "DNSSD"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • Related Pages

kdelibs-4.14.38 API Reference

Skip menu "kdelibs-4.14.38 API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal