/*
 * This file was generated by qdbusxml2cpp version 0.8
 * Source file was org.freedesktop.Akonadi.StorageDebugger.xml
 *
 * qdbusxml2cpp is Copyright (C) The Qt Company Ltd. and other contributors.
 *
 * This is an auto-generated file.
 * This file may have been hand-edited. Look for HAND-EDIT comments
 * before re-generating it.
 */

#ifndef STORAGEDEBUGGERADAPTOR_H
#define STORAGEDEBUGGERADAPTOR_H

#include <QtCore/QObject>
#include <QtDBus/QtDBus>
#include "storage/storagedebugger.h"
#include <QtCore/qcontainerfwd.h>

/*
 * Adaptor class for interface org.freedesktop.Akonadi.StorageDebugger
 */
class StorageDebuggerAdaptor: public QDBusAbstractAdaptor
{
    Q_OBJECT
    Q_CLASSINFO("D-Bus Interface", "org.freedesktop.Akonadi.StorageDebugger")
    Q_CLASSINFO("D-Bus Introspection", ""
"  <interface name=\"org.freedesktop.Akonadi.StorageDebugger\">\n"
"    <method name=\"enableSQLDebugging\">\n"
"      <arg direction=\"in\" type=\"b\" name=\"enable\"/>\n"
"    </method>\n"
"    <method name=\"isSQLDebuggingEnabled\">\n"
"      <arg direction=\"out\" type=\"b\"/>\n"
"    </method>\n"
"    <signal name=\"connectionOpened\">\n"
"      <arg direction=\"out\" type=\"x\" name=\"id\"/>\n"
"      <arg direction=\"out\" type=\"s\" name=\"name\"/>\n"
"      <arg direction=\"out\" type=\"x\" name=\"timestamp\"/>\n"
"    </signal>\n"
"    <signal name=\"connectionChanged\">\n"
"      <arg direction=\"out\" type=\"x\" name=\"id\"/>\n"
"      <arg direction=\"out\" type=\"s\" name=\"name\"/>\n"
"    </signal>\n"
"    <signal name=\"connectionClosed\">\n"
"      <arg direction=\"out\" type=\"x\" name=\"id\"/>\n"
"      <arg direction=\"out\" type=\"x\" name=\"timestamp\"/>\n"
"    </signal>\n"
"    <signal name=\"transactionStarted\">\n"
"      <arg direction=\"out\" type=\"x\" name=\"connectionId\"/>\n"
"      <arg direction=\"out\" type=\"s\" name=\"name\"/>\n"
"      <arg direction=\"out\" type=\"x\" name=\"timestamp\"/>\n"
"      <arg direction=\"out\" type=\"u\" name=\"duration\"/>\n"
"      <arg direction=\"out\" type=\"s\" name=\"error\"/>\n"
"    </signal>\n"
"    <signal name=\"transactionFinished\">\n"
"      <arg direction=\"out\" type=\"x\" name=\"connectionId\"/>\n"
"      <arg direction=\"out\" type=\"b\" name=\"commit\"/>\n"
"      <arg direction=\"out\" type=\"x\" name=\"timestamp\"/>\n"
"      <arg direction=\"out\" type=\"u\" name=\"duration\"/>\n"
"      <arg direction=\"out\" type=\"s\" name=\"error\"/>\n"
"    </signal>\n"
"    <method name=\"connections\">\n"
"      <arg direction=\"out\" type=\"a(xsxsx)\"/>\n"
"      <annotation value=\"QList&lt;DbConnection&gt;\" name=\"org.qtproject.QtDBus.QtTypeName.Out0\"/>\n"
"    </method>\n"
"    <signal name=\"queryExecuted\">\n"
"      <arg direction=\"out\" type=\"d\" name=\"sequence\"/>\n"
"      <arg direction=\"out\" type=\"x\" name=\"connectionId\"/>\n"
"      <arg type=\"x\" name=\"timestamp\"/>\n"
"      <arg direction=\"out\" type=\"u\" name=\"duration\"/>\n"
"      <arg direction=\"out\" type=\"s\" name=\"query\"/>\n"
"      <annotation value=\"const QMap&lt;QString,QVariant&gt; &amp;\" name=\"org.qtproject.QtDBus.QtTypeName.Out5\"/>\n"
"      <annotation value=\"const QMap&lt;QString,QVariant&gt; &amp;\" name=\"org.qtproject.QtDBus.QtTypeName.In5\"/>\n"
"      <arg direction=\"out\" type=\"a{sv}\" name=\"values\"/>\n"
"      <arg direction=\"out\" type=\"i\" name=\"resultsCount\"/>\n"
"      <annotation value=\"const QList&lt;QList&lt;QVariant&gt; &gt; &amp;\" name=\"org.qtproject.QtDBus.QtTypeName.Out7\"/>\n"
"      <annotation value=\"const QList&lt;QList&lt;QVariant&gt; &gt; &amp;\" name=\"org.qtproject.QtDBus.QtTypeName.In7\"/>\n"
"      <arg direction=\"out\" type=\"aav\" name=\"result\"/>\n"
"      <arg direction=\"out\" type=\"s\" name=\"error\"/>\n"
"    </signal>\n"
"  </interface>\n"
        "")
public:
    StorageDebuggerAdaptor(Akonadi::Server::StorageDebugger *parent);
    ~StorageDebuggerAdaptor() override;

    inline Akonadi::Server::StorageDebugger *parent() const
    { return static_cast<Akonadi::Server::StorageDebugger *>(QObject::parent()); }

public: // PROPERTIES
public Q_SLOTS: // METHODS
    QList<DbConnection> connections();
    void enableSQLDebugging(bool enable);
    bool isSQLDebuggingEnabled();
Q_SIGNALS: // SIGNALS
    void connectionChanged(qlonglong id, const QString &name);
    void connectionClosed(qlonglong id, qlonglong timestamp);
    void connectionOpened(qlonglong id, const QString &name, qlonglong timestamp);
    void queryExecuted(double sequence, qlonglong connectionId, qlonglong timestamp, uint duration, const QString &query, const QMap<QString,QVariant> & values, int resultsCount, const QList<QList<QVariant> > & result, const QString &error);
    void transactionFinished(qlonglong connectionId, bool commit, qlonglong timestamp, uint duration, const QString &error);
    void transactionStarted(qlonglong connectionId, const QString &name, qlonglong timestamp, uint duration, const QString &error);
};

#endif
