Merge pull request #52 from MouseZhangZh/0106-dev

💚💚💚add class ukui-search-qdbus and some problems' fixes
This commit is contained in:
iaom 2021-01-06 14:30:31 +08:00 committed by GitHub
commit 7d254d543f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 75 additions and 8 deletions

View File

@ -41,3 +41,4 @@ void FileTypeFilter::Test(){
ig->creatAllIndex(this->result);
}

View File

@ -13,7 +13,8 @@ HEADERS += \
$$PWD/messagelisttemplate.h \
$$PWD/traverse_bfs.h \
# $$PWD/text-content-indexer.h \
$$PWD/file-searcher.h
$$PWD/file-searcher.h \
$$PWD/ukui-search-qdbus.h
SOURCES += \
# $$PWD/chinesecharacterstopinyin.cpp \
@ -29,5 +30,6 @@ SOURCES += \
$$PWD/test-Inotify-Manager.cpp \
$$PWD/traverse_bfs.cpp \
# $$PWD/text-content-indexer.cpp \
$$PWD/file-searcher.cpp
$$PWD/file-searcher.cpp \
$$PWD/ukui-search-qdbus.cpp

View File

@ -1,7 +1,18 @@
#include "inotify.h"
#include "ukui-search-qdbus.h"
InotifyManagerRefact::InotifyManagerRefact(const QString& path) : Traverse_BFS(path)
{
/*-------------ukuisearchdbus Test start-----------------*/
qDebug() << "setInotifyMaxUserWatches start";
UkuiSearchQDBus usQDBus;
usQDBus.setInotifyMaxUserWatches();
qDebug() << "setInotifyMaxUserWatches end";
/*-------------ukuisearchdbus Test End-----------------*/
// dirPath = new QMap<QString, QStringList>();
m_fd = inotify_init();
qDebug() << "m_fd----------->" <<m_fd;

View File

@ -0,0 +1,29 @@
#include "ukui-search-qdbus.h"
#include <QDebug>
UkuiSearchQDBus::UkuiSearchQDBus()
{
this->tmpSystemQDBusInterface = new QDBusInterface("com.ukui.search.qt.systemdbus",
"/",
"com.ukui.search.interface",
QDBusConnection::systemBus());
if (!tmpSystemQDBusInterface->isValid()){
qCritical() << "Create Client Interface Failed When execute chage: " << QDBusConnection::systemBus().lastError();
return;
}
}
UkuiSearchQDBus::~UkuiSearchQDBus(){
delete this->tmpSystemQDBusInterface;
this->tmpSystemQDBusInterface = nullptr;
}
//一键三连
void UkuiSearchQDBus::setInotifyMaxUserWatches()
{
// /proc/sys/fs/inotify/max_user_watches
this->tmpSystemQDBusInterface->call("setInotifyMaxUseWatchesStep1");
// sysctl
this->tmpSystemQDBusInterface->call("setInotifyMaxUseWatchesStep2");
// /etc/sysctl.conf
this->tmpSystemQDBusInterface->call("setInotifyMaxUseWatchesStep3");
}

View File

@ -0,0 +1,16 @@
#ifndef UKUISEARCHQDBUS_H
#define UKUISEARCHQDBUS_H
#include <QDBusInterface>
class UkuiSearchQDBus
{
public:
UkuiSearchQDBus();
~UkuiSearchQDBus();
void setInotifyMaxUserWatches();
private:
QDBusInterface* tmpSystemQDBusInterface;
};
#endif // UKUISEARCHQDBUS_H

View File

@ -10,6 +10,8 @@
#include "index/filetypefilter.h"
#include "index/ukui-search-qdbus.h"
class LIBSEARCH_EXPORT GlobalSearch
{
public:

View File

@ -1,4 +1,4 @@
QT += core concurrent xml widgets
QT += core concurrent xml widgets dbus
VERSION = 0.0.1
TARGET = ukui-search

View File

@ -47,6 +47,12 @@ void centerToScreen(QWidget* widget) {
int main(int argc, char *argv[])
{
/*-------------ukuisearchdbus Test start-----------------*/
// UkuiSearchQDBus usQDBus;
// usQDBus.setInotifyMaxUserWatches();
/*-------------ukuisearchdbus Test End-----------------*/
//load chinese character and pinyin file to a Map
FileUtils::loadHanziTable("://index/pinyinWithoutTone.txt");
/*-------------InotyifyRefact Test Start---------------*/
@ -58,7 +64,7 @@ int main(int argc, char *argv[])
qDebug() << t2;
/*-------------InotyifyRefact Test End-----------------*/
/*-------------InotyifyRefact Test Start---------------*/
/*-------------content index Test Start---------------*/
QTime t3 = QTime::currentTime();
FileTypeFilter* ftf = new FileTypeFilter("/home");
ftf->Test();
@ -67,7 +73,7 @@ int main(int argc, char *argv[])
ftf = nullptr;
qDebug() << t3;
qDebug() << t4;
/*-------------InotyifyRefact Test End-----------------*/
/*-------------content index Test End-----------------*/
/*-------------文本搜索 Test start-----------------*/
// FileSearcher *search = new FileSearcher();

View File

@ -57,7 +57,7 @@ qm_files.files = $$OUT_PWD/res/translations/*.qm
INSTALLS += \
qm_files \
LIBS += -L$$PWD/../libsearch -lukui-search -L$$PWD/../libchinese-segmentation/ -lchinese-segmentation
LIBS += -L$$OUT_PWD/../libsearch -L$$OUT_PWD/../libchinese-segmentation/ -lchinese-segmentation -lukui-search
INCLUDEPATH += $$PWD/../libsearch
DEPENDPATH += $$PWD/../libsearch

View File

@ -1,4 +1,4 @@
[D-BUS Service]
Name=com.ukui.search.qt.systemdbus
Exec=/usr/bin/ukuiSearchSystemDBus
Exec=/usr/bin/ukui-search-systemdbus
User=root

View File

@ -2,7 +2,7 @@ QT += core dbus
QT -= gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = ukuiSearchSystemDBus
TARGET = ukui-search-systemdbus
TEMPLATE = app
CONFIG += console c++11 link_pkgconfig