/strigi-0.7.7/strigidaemon/tests/daemon/dbus/xesamlistener.h
C Header | 48 lines | 25 code | 4 blank | 19 comment | 0 complexity | 6d795fee895071e67aa4ea07038b373b MD5 | raw file
Possible License(s): LGPL-2.0
1/* This file is part of Strigi Desktop Search
2 *
3 * Copyright (C) 2008 Jos van den Oever <jos@vandenoever.info>
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#ifndef XESAMLISTENER_H
21#define XESAMLISTENER_H
22
23#include <QtCore/QStringList>
24#include <QtCore/QEventLoop>
25#include <QtCore/QMap>
26
27class OrgFreedesktopXesamSearchInterface;
28
29class XesamListener : public QObject {
30Q_OBJECT
31private:
32 QEventLoop eventloop;
33 QStringList finishedSearches;
34 QMap<QString, uint> hitsReported;
35public:
36 XesamListener(OrgFreedesktopXesamSearchInterface*);
37 bool waitForSearchToFinish(const QString& searchid,
38 int millisecondtimeout);
39 uint getNumberOfReportedHits(const QString& searchid) const;
40private slots:
41 void slotHitsAdded(const QString &search, uint count);
42 void slotHitsModified(const QString &search, const QList<uint> &hit_ids);
43 void slotHitsRemoved(const QString &search, const QList<uint> &hit_ids);
44 void slotSearchDone(const QString &search);
45 void slotStateChanged(const QStringList &state_info);
46};
47
48#endif