51 // to version without notice, or even be removed. |
51 // to version without notice, or even be removed. |
52 // |
52 // |
53 // We mean it. |
53 // We mean it. |
54 // |
54 // |
55 |
55 |
56 #include "qhelpsearchindexreader_p.h" |
56 #include <QtCore/QList> |
|
57 #include <QtCore/QString> |
|
58 #include <QtCore/QStringList> |
57 |
59 |
58 #include "fulltextsearch/qanalyzer_p.h" |
60 #include "fulltextsearch/qanalyzer_p.h" |
59 #include "fulltextsearch/qquery_p.h" |
61 #include "fulltextsearch/qquery_p.h" |
|
62 #include "qhelpsearchindexreader_p.h" |
60 |
63 |
61 QT_BEGIN_NAMESPACE |
64 QT_BEGIN_NAMESPACE |
62 |
65 |
63 namespace fulltextsearch { |
66 namespace fulltextsearch { |
64 namespace clucene { |
67 namespace clucene { |
71 QHelpSearchIndexReaderClucene(); |
74 QHelpSearchIndexReaderClucene(); |
72 ~QHelpSearchIndexReaderClucene(); |
75 ~QHelpSearchIndexReaderClucene(); |
73 |
76 |
74 private: |
77 private: |
75 void run(); |
78 void run(); |
76 bool defaultQuery(const QString &term, QCLuceneBooleanQuery &booleanQuery, |
|
77 QCLuceneStandardAnalyzer &analyzer); |
|
78 bool buildQuery(QCLuceneBooleanQuery &booleanQuery, const QList<QHelpSearchQuery> &queryList, |
|
79 QCLuceneStandardAnalyzer &analyzer); |
|
80 bool buildTryHarderQuery(QCLuceneBooleanQuery &booleanQuery, |
|
81 const QList<QHelpSearchQuery> &queryList, QCLuceneStandardAnalyzer &analyzer); |
|
82 void boostSearchHits(const QHelpEngineCore &engine, QList<QHelpSearchEngine::SearchHit> &hitList, |
79 void boostSearchHits(const QHelpEngineCore &engine, QList<QHelpSearchEngine::SearchHit> &hitList, |
83 const QList<QHelpSearchQuery> &queryList); |
80 const QList<QHelpSearchQuery> &queryList); |
|
81 bool buildQuery(const QList<QHelpSearchQuery> &queries, |
|
82 const QString &fieldName, |
|
83 const QStringList &filterAttributes, |
|
84 QCLuceneBooleanQuery &booleanQuery, |
|
85 QCLuceneAnalyzer &analyzer); |
|
86 bool buildTryHarderQuery(const QList<QHelpSearchQuery> &queries, |
|
87 const QString &fieldName, |
|
88 const QStringList &filterAttributes, |
|
89 QCLuceneBooleanQuery &booleanQuery, |
|
90 QCLuceneAnalyzer &analyzer); |
|
91 bool addFuzzyQuery(const QHelpSearchQuery &query, const QString &fieldName, |
|
92 QCLuceneBooleanQuery &booleanQuery, QCLuceneAnalyzer &analyzer); |
|
93 bool addWithoutQuery(const QHelpSearchQuery &query, const QString &fieldName, |
|
94 QCLuceneBooleanQuery &booleanQuery); |
|
95 bool addPhraseQuery(const QHelpSearchQuery &query, const QString &fieldName, |
|
96 QCLuceneBooleanQuery &booleanQuery); |
|
97 bool addAllQuery(const QHelpSearchQuery &query, const QString &fieldName, |
|
98 QCLuceneBooleanQuery &booleanQuery); |
|
99 bool addDefaultQuery(const QHelpSearchQuery &query, const QString &fieldName, |
|
100 bool allTermsRequired, QCLuceneBooleanQuery &booleanQuery, |
|
101 QCLuceneAnalyzer &analyzer); |
|
102 bool addAtLeastQuery(const QHelpSearchQuery &query, const QString &fieldName, |
|
103 QCLuceneBooleanQuery &booleanQuery, QCLuceneAnalyzer &analyzer); |
|
104 bool addAttributesQuery(const QStringList &filterAttributes, |
|
105 QCLuceneBooleanQuery &booleanQuery, QCLuceneAnalyzer &analyzer); |
|
106 bool isNegativeQuery(const QHelpSearchQuery &query) const; |
84 }; |
107 }; |
85 |
108 |
86 } // namespace clucene |
109 } // namespace clucene |
87 } // namespace fulltextsearch |
110 } // namespace fulltextsearch |
88 |
111 |