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