/*
 * This file was generated by qdbusxml2cpp version 0.8
 * Source file was org.freedesktop.Avahi.EntryGroup.xml
 *
 * qdbusxml2cpp is Copyright (C) The Qt Company Ltd. and other contributors.
 *
 * This is an auto-generated file.
 * Do not edit! All changes made to it will be lost.
 */

#ifndef AVAHIENTRYGROUP_H
#define AVAHIENTRYGROUP_H

#include <QtCore/QObject>
#include <QtCore/QByteArray>
#include <QtCore/QList>
#include <QtCore/QMap>
#include <QtCore/QString>
#include <QtCore/QStringList>
#include <QtCore/QVariant>
#include <QtDBus/QtDBus>

/*
 * Proxy class for interface org.freedesktop.Avahi.EntryGroup
 */
class OrgFreedesktopAvahiEntryGroupInterface: public QDBusAbstractInterface
{
    Q_OBJECT
public:
    static inline const char *staticInterfaceName()
    { return "org.freedesktop.Avahi.EntryGroup"; }

public:
    OrgFreedesktopAvahiEntryGroupInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr);

    ~OrgFreedesktopAvahiEntryGroupInterface();

public Q_SLOTS: // METHODS
    inline QDBusPendingReply<> AddAddress(int interface, int protocol, uint flags, const QString &name, const QString &address)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(interface) << QVariant::fromValue(protocol) << QVariant::fromValue(flags) << QVariant::fromValue(name) << QVariant::fromValue(address);
        return asyncCallWithArgumentList(QStringLiteral("AddAddress"), argumentList);
    }

    inline QDBusPendingReply<> AddRecord(int interface, int protocol, uint flags, const QString &name, ushort clazz, ushort type, uint ttl, const QByteArray &rdata)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(interface) << QVariant::fromValue(protocol) << QVariant::fromValue(flags) << QVariant::fromValue(name) << QVariant::fromValue(clazz) << QVariant::fromValue(type) << QVariant::fromValue(ttl) << QVariant::fromValue(rdata);
        return asyncCallWithArgumentList(QStringLiteral("AddRecord"), argumentList);
    }

    inline QDBusPendingReply<> AddService(int interface, int protocol, uint flags, const QString &name, const QString &type, const QString &domain, const QString &host, ushort port, const QByteArrayList &txt)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(interface) << QVariant::fromValue(protocol) << QVariant::fromValue(flags) << QVariant::fromValue(name) << QVariant::fromValue(type) << QVariant::fromValue(domain) << QVariant::fromValue(host) << QVariant::fromValue(port) << QVariant::fromValue(txt);
        return asyncCallWithArgumentList(QStringLiteral("AddService"), argumentList);
    }

    inline QDBusPendingReply<> AddServiceSubtype(int interface, int protocol, uint flags, const QString &name, const QString &type, const QString &domain, const QString &subtype)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(interface) << QVariant::fromValue(protocol) << QVariant::fromValue(flags) << QVariant::fromValue(name) << QVariant::fromValue(type) << QVariant::fromValue(domain) << QVariant::fromValue(subtype);
        return asyncCallWithArgumentList(QStringLiteral("AddServiceSubtype"), argumentList);
    }

    inline QDBusPendingReply<> Commit()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("Commit"), argumentList);
    }

    inline QDBusPendingReply<> Free()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("Free"), argumentList);
    }

    inline QDBusPendingReply<int> GetState()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("GetState"), argumentList);
    }

    inline QDBusPendingReply<bool> IsEmpty()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("IsEmpty"), argumentList);
    }

    inline QDBusPendingReply<> Reset()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("Reset"), argumentList);
    }

    inline QDBusPendingReply<> UpdateServiceTxt(int interface, int protocol, uint flags, const QString &name, const QString &type, const QString &domain, const QByteArrayList &txt)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(interface) << QVariant::fromValue(protocol) << QVariant::fromValue(flags) << QVariant::fromValue(name) << QVariant::fromValue(type) << QVariant::fromValue(domain) << QVariant::fromValue(txt);
        return asyncCallWithArgumentList(QStringLiteral("UpdateServiceTxt"), argumentList);
    }

Q_SIGNALS: // SIGNALS
    void StateChanged(int state, const QString &error);
};

#endif
// clazy:skip
