9#ifndef PLUGINS_AZOTH_INTERFACES_IHAVESERVICEDISCOVERY_H
10#define PLUGINS_AZOTH_INTERFACES_IHAVESERVICEDISCOVERY_H
13class QAbstractItemModel;
52 virtual void SetQuery (
const QString& query) = 0;
123 virtual void ExecuteAction (
const QModelIndex& index,
const QByteArray&
id) = 0;
209 "org.Deviant.LeechCraft.Azoth.ISDSession/1.0")
210Q_DECLARE_INTERFACE (
LC::Azoth::IHaveServiceDiscovery,
211 "org.Deviant.LeechCraft.Azoth.IHaveServiceDiscovery/1.0")
Interface for accounts supporting service discovery.
virtual QObject * CreateSDSession()=0
Creates a new service discovery session.
virtual void gotSDSession(QObject *session)=0
Notifies about a new service discovery session.
virtual QString GetDefaultQuery() const =0
Returns the default query for this account.
virtual ~IHaveServiceDiscovery()
Interface for service discovery sessions.
virtual QAbstractItemModel * GetRepresentationModel() const =0
Returns the model representing discovery results.
virtual QString GetQuery() const =0
Returns the query of this SD session.
virtual QList< QPair< QByteArray, QString > > GetActionsFor(const QModelIndex &index)=0
Returns the list of actions for the given index.
virtual void SetQuery(const QString &query)=0
Sets the service discovery query.
virtual void ExecuteAction(const QModelIndex &index, const QByteArray &id)=0
Executes the action with the given id.