# HG changeset patch # User hgs # Date 1280127451 -19800 # Node ID fcb2a58c181b30ecc2f101dc32ac8c5ac3c1c491 # Parent 7c6f43cd91cf62cfff86ffd3af3996e2f7db83d2 201029 diff -r 7c6f43cd91cf -r fcb2a58c181b harvester/harvesterserver/src/charvesterserver.cpp --- a/harvester/harvesterserver/src/charvesterserver.cpp Mon Jul 12 00:18:57 2010 +0530 +++ b/harvester/harvesterserver/src/charvesterserver.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -44,7 +44,7 @@ // CHarvesterServer* CHarvesterServer::NewLC() { - CHarvesterServer* HarvesterServer = new ( ELeave ) CHarvesterServer( EPriorityNormal ); + CHarvesterServer* HarvesterServer = new ( ELeave ) CHarvesterServer( CActive::EPriorityStandard ); CleanupStack::PushL(HarvesterServer); HarvesterServer->ConstructL(); return HarvesterServer; @@ -57,6 +57,9 @@ // void CHarvesterServer::ConstructL() { + RProcess process; + process.SetPriority( EPriorityBackground ); + process.Close(); iIndexingManager = CIndexingManager::NewL(); StartL(KHarvesterServerName); } @@ -143,7 +146,7 @@ CHarvesterServer* server = CHarvesterServer::NewLC(); // Set thread priority - RProcess().SetPriority(EPriorityBackground); + //RProcess().SetPriority(EPriorityBackground); // Rename the thread. User::RenameThread(KHarvesterServerName); diff -r 7c6f43cd91cf -r fcb2a58c181b layers.sysdef.xml --- a/layers.sysdef.xml Mon Jul 12 00:18:57 2010 +0530 +++ b/layers.sysdef.xml Mon Jul 26 12:27:31 2010 +0530 @@ -8,7 +8,7 @@ - + diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/bwins/cpixsearchu.def --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/bwins/cpixsearchu.def Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,73 @@ +EXPORTS + ?documentAsync@CpixSearcher@@QAEXH@Z @ 1 NONAME ; void CpixSearcher::documentAsync(int) + ?docId@CpixDocument@@QBE?AVQString@@XZ @ 2 NONAME ; class QString CpixDocument::docId(void) const + ?d_func@CpixDocumentField@@ABEPBVCpixDocumentFieldPrivate@@XZ @ 3 NONAME ; class CpixDocumentFieldPrivate const * CpixDocumentField::d_func(void) const + ?metaObject@CpixDocument@@UBEPBUQMetaObject@@XZ @ 4 NONAME ; struct QMetaObject const * CpixDocument::metaObject(void) const + ?cancelSearch@CpixSearcher@@QAEXXZ @ 5 NONAME ; void CpixSearcher::cancelSearch(void) + ?tr@CpixDocumentField@@SA?AVQString@@PBD0H@Z @ 6 NONAME ; class QString CpixDocumentField::tr(char const *, char const *, int) + ?handleDocument@CpixSearcher@@IAEXHPAVCpixDocument@@@Z @ 7 NONAME ; void CpixSearcher::handleDocument(int, class CpixDocument *) + ?qt_metacall@CpixDocumentField@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 8 NONAME ; int CpixDocumentField::qt_metacall(enum QMetaObject::Call, int, void * *) + ?qt_metacast@CpixSearcher@@UAEPAXPBD@Z @ 9 NONAME ; void * CpixSearcher::qt_metacast(char const *) + ?handleSearchResults@CpixSearcher@@IAEXHH@Z @ 10 NONAME ; void CpixSearcher::handleSearchResults(int, int) + ?searchAsync@CpixSearcher@@QAEXVQString@@0@Z @ 11 NONAME ; void CpixSearcher::searchAsync(class QString, class QString) + ?tr@CpixDocument@@SA?AVQString@@PBD0@Z @ 12 NONAME ; class QString CpixDocument::tr(char const *, char const *) + ??1CpixDocumentField@@UAE@XZ @ 13 NONAME ; CpixDocumentField::~CpixDocumentField(void) + ?getStaticMetaObject@CpixDocument@@SAABUQMetaObject@@XZ @ 14 NONAME ; struct QMetaObject const & CpixDocument::getStaticMetaObject(void) + ??_ECpixDocument@@UAE@I@Z @ 15 NONAME ; CpixDocument::~CpixDocument(unsigned int) + ?newInstance@CpixDocumentField@@SAPAV1@VQString@@0H@Z @ 16 NONAME ; class CpixDocumentField * CpixDocumentField::newInstance(class QString, class QString, int) + ??_ECpixSearcher@@UAE@I@Z @ 17 NONAME ; CpixSearcher::~CpixSearcher(unsigned int) + ?d_func@CpixDocument@@ABEPBVCpixDocumentPrivate@@XZ @ 18 NONAME ; class CpixDocumentPrivate const * CpixDocument::d_func(void) const + ?trUtf8@CpixDocumentField@@SA?AVQString@@PBD0H@Z @ 19 NONAME ; class QString CpixDocumentField::trUtf8(char const *, char const *, int) + ?getStaticMetaObject@CpixDocumentField@@SAABUQMetaObject@@XZ @ 20 NONAME ; struct QMetaObject const & CpixDocumentField::getStaticMetaObject(void) + ?staticMetaObject@CpixDocument@@2UQMetaObject@@B @ 21 NONAME ; struct QMetaObject const CpixDocument::staticMetaObject + ??_ECpixDocumentField@@UAE@I@Z @ 22 NONAME ; CpixDocumentField::~CpixDocumentField(unsigned int) + ?config@CpixDocumentField@@QBEHXZ @ 23 NONAME ; int CpixDocumentField::config(void) const + ?tr@CpixSearcher@@SA?AVQString@@PBD0H@Z @ 24 NONAME ; class QString CpixSearcher::tr(char const *, char const *, int) + ?d_func@CpixDocument@@AAEPAVCpixDocumentPrivate@@XZ @ 25 NONAME ; class CpixDocumentPrivate * CpixDocument::d_func(void) + ?trUtf8@CpixDocument@@SA?AVQString@@PBD0H@Z @ 26 NONAME ; class QString CpixDocument::trUtf8(char const *, char const *, int) + ?setValue@CpixDocumentField@@QAEXVQString@@@Z @ 27 NONAME ; void CpixDocumentField::setValue(class QString) + ?qt_metacall@CpixSearcher@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 28 NONAME ; int CpixSearcher::qt_metacall(enum QMetaObject::Call, int, void * *) + ?qt_metacall@CpixDocument@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 29 NONAME ; int CpixDocument::qt_metacall(enum QMetaObject::Call, int, void * *) + ??1CpixDocument@@UAE@XZ @ 30 NONAME ; CpixDocument::~CpixDocument(void) + ?handleDatabaseSet@CpixSearcher@@IAEXH@Z @ 31 NONAME ; void CpixSearcher::handleDatabaseSet(int) + ??0CpixDocumentField@@AAE@VQString@@0H@Z @ 32 NONAME ; CpixDocumentField::CpixDocumentField(class QString, class QString, int) + ?trUtf8@CpixSearcher@@SA?AVQString@@PBD0@Z @ 33 NONAME ; class QString CpixSearcher::trUtf8(char const *, char const *) + ?newInstance@CpixDocument@@SAPAV1@XZ @ 34 NONAME ; class CpixDocument * CpixDocument::newInstance(void) + ?setDatabaseAsync@CpixSearcher@@QAEXVQString@@@Z @ 35 NONAME ; void CpixSearcher::setDatabaseAsync(class QString) + ?value@CpixDocumentField@@QBE?AVQString@@XZ @ 36 NONAME ; class QString CpixDocumentField::value(void) const + ?name@CpixDocumentField@@QBE?AVQString@@XZ @ 37 NONAME ; class QString CpixDocumentField::name(void) const + ?search@CpixSearcher@@QAEHVQString@@0@Z @ 38 NONAME ; int CpixSearcher::search(class QString, class QString) + ?tr@CpixDocumentField@@SA?AVQString@@PBD0@Z @ 39 NONAME ; class QString CpixDocumentField::tr(char const *, char const *) + ?staticMetaObject@CpixSearcher@@2UQMetaObject@@B @ 40 NONAME ; struct QMetaObject const CpixSearcher::staticMetaObject + ??1CpixSearcher@@UAE@XZ @ 41 NONAME ; CpixSearcher::~CpixSearcher(void) + ?excerpt@CpixDocument@@QBE?AVQString@@XZ @ 42 NONAME ; class QString CpixDocument::excerpt(void) const + ?setName@CpixDocumentField@@QAEXVQString@@@Z @ 43 NONAME ; void CpixDocumentField::setName(class QString) + ?setDocId@CpixDocument@@QAEXVQString@@@Z @ 44 NONAME ; void CpixDocument::setDocId(class QString) + ?fieldCount@CpixDocument@@QBEHXZ @ 45 NONAME ; int CpixDocument::fieldCount(void) const + ?baseAppClass@CpixDocument@@QBE?AVQString@@XZ @ 46 NONAME ; class QString CpixDocument::baseAppClass(void) const + ?qt_metacast@CpixDocumentField@@UAEPAXPBD@Z @ 47 NONAME ; void * CpixDocumentField::qt_metacast(char const *) + ?newInstance@CpixSearcher@@SAPAV1@XZ @ 48 NONAME ; class CpixSearcher * CpixSearcher::newInstance(void) + ?field@CpixDocument@@QBEABVCpixDocumentField@@H@Z @ 49 NONAME ; class CpixDocumentField const & CpixDocument::field(int) const + ?metaObject@CpixSearcher@@UBEPBUQMetaObject@@XZ @ 50 NONAME ; struct QMetaObject const * CpixSearcher::metaObject(void) const + ?metaObject@CpixDocumentField@@UBEPBUQMetaObject@@XZ @ 51 NONAME ; struct QMetaObject const * CpixDocumentField::metaObject(void) const + ?qt_metacast@CpixDocument@@UAEPAXPBD@Z @ 52 NONAME ; void * CpixDocument::qt_metacast(char const *) + ?document@CpixSearcher@@QAEPAVCpixDocument@@H@Z @ 53 NONAME ; class CpixDocument * CpixSearcher::document(int) + ?trUtf8@CpixDocument@@SA?AVQString@@PBD0@Z @ 54 NONAME ; class QString CpixDocument::trUtf8(char const *, char const *) + ?setExcerpt@CpixDocument@@QAEXVQString@@@Z @ 55 NONAME ; void CpixDocument::setExcerpt(class QString) + ?tr@CpixDocument@@SA?AVQString@@PBD0H@Z @ 56 NONAME ; class QString CpixDocument::tr(char const *, char const *, int) + ?addField@CpixDocument@@QAEXVQString@@0H@Z @ 57 NONAME ; void CpixDocument::addField(class QString, class QString, int) + ??0CpixDocument@@AAE@XZ @ 58 NONAME ; CpixDocument::CpixDocument(void) + ?newInstance@CpixSearcher@@SAPAV1@VQString@@0@Z @ 59 NONAME ; class CpixSearcher * CpixSearcher::newInstance(class QString, class QString) + ?setDatabase@CpixSearcher@@QAEXVQString@@@Z @ 60 NONAME ; void CpixSearcher::setDatabase(class QString) + ?setBaseAppClass@CpixDocument@@QAEXVQString@@@Z @ 61 NONAME ; void CpixDocument::setBaseAppClass(class QString) + ?trUtf8@CpixDocumentField@@SA?AVQString@@PBD0@Z @ 62 NONAME ; class QString CpixDocumentField::trUtf8(char const *, char const *) + ?tr@CpixSearcher@@SA?AVQString@@PBD0@Z @ 63 NONAME ; class QString CpixSearcher::tr(char const *, char const *) + ?getStaticMetaObject@CpixSearcher@@SAABUQMetaObject@@XZ @ 64 NONAME ; struct QMetaObject const & CpixSearcher::getStaticMetaObject(void) + ?d_func@CpixDocumentField@@AAEPAVCpixDocumentFieldPrivate@@XZ @ 65 NONAME ; class CpixDocumentFieldPrivate * CpixDocumentField::d_func(void) + ?d_func@CpixSearcher@@ABEPBVCpixSearcherPrivate@@XZ @ 66 NONAME ; class CpixSearcherPrivate const * CpixSearcher::d_func(void) const + ?trUtf8@CpixSearcher@@SA?AVQString@@PBD0H@Z @ 67 NONAME ; class QString CpixSearcher::trUtf8(char const *, char const *, int) + ??0CpixSearcher@@AAE@XZ @ 68 NONAME ; CpixSearcher::CpixSearcher(void) + ?d_func@CpixSearcher@@AAEPAVCpixSearcherPrivate@@XZ @ 69 NONAME ; class CpixSearcherPrivate * CpixSearcher::d_func(void) + ?setConfig@CpixDocumentField@@QAEXH@Z @ 70 NONAME ; void CpixDocumentField::setConfig(int) + ?staticMetaObject@CpixDocumentField@@2UQMetaObject@@B @ 71 NONAME ; struct QMetaObject const CpixDocumentField::staticMetaObject + diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/bwins/qcpixsearchclientu.def --- a/qcpix/bwins/qcpixsearchclientu.def Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,73 +0,0 @@ -EXPORTS - ?setDocId@QCPixDocument@@QAEXVQString@@@Z @ 1 NONAME ; void QCPixDocument::setDocId(class QString) - ?trUtf8@QCPixSearcher@@SA?AVQString@@PBD0H@Z @ 2 NONAME ; class QString QCPixSearcher::trUtf8(char const *, char const *, int) - ?tr@QCPixDocument@@SA?AVQString@@PBD0H@Z @ 3 NONAME ; class QString QCPixDocument::tr(char const *, char const *, int) - ?newInstance@QCPixDocument@@SAPAV1@XZ @ 4 NONAME ; class QCPixDocument * QCPixDocument::newInstance(void) - ?tr@QCPixDocument@@SA?AVQString@@PBD0@Z @ 5 NONAME ; class QString QCPixDocument::tr(char const *, char const *) - ?metaObject@QCPixDocumentField@@UBEPBUQMetaObject@@XZ @ 6 NONAME ; struct QMetaObject const * QCPixDocumentField::metaObject(void) const - ?tr@QCPixDocumentField@@SA?AVQString@@PBD0H@Z @ 7 NONAME ; class QString QCPixDocumentField::tr(char const *, char const *, int) - ?setExcerpt@QCPixDocument@@QAEXVQString@@@Z @ 8 NONAME ; void QCPixDocument::setExcerpt(class QString) - ??_EQCPixDocumentField@@UAE@I@Z @ 9 NONAME ; QCPixDocumentField::~QCPixDocumentField(unsigned int) - ?name@QCPixDocumentField@@QBE?AVQString@@XZ @ 10 NONAME ; class QString QCPixDocumentField::name(void) const - ?setName@QCPixDocumentField@@QAEXVQString@@@Z @ 11 NONAME ; void QCPixDocumentField::setName(class QString) - ?search@QCPixSearcher@@QAEHVQString@@0@Z @ 12 NONAME ; int QCPixSearcher::search(class QString, class QString) - ?getDocument@QCPixSearcher@@QAEPAVQCPixDocument@@H@Z @ 13 NONAME ; class QCPixDocument * QCPixSearcher::getDocument(int) - ?excerpt@QCPixDocument@@QBE?AVQString@@XZ @ 14 NONAME ; class QString QCPixDocument::excerpt(void) const - ?d_func@QCPixDocument@@AAEPAVQCPixDocumentPrivate@@XZ @ 15 NONAME ; class QCPixDocumentPrivate * QCPixDocument::d_func(void) - ?qt_metacast@QCPixSearcher@@UAEPAXPBD@Z @ 16 NONAME ; void * QCPixSearcher::qt_metacast(char const *) - ?d_func@QCPixSearcher@@AAEPAVQCPixSearcherPrivate@@XZ @ 17 NONAME ; class QCPixSearcherPrivate * QCPixSearcher::d_func(void) - ?setDatabaseAsync@QCPixSearcher@@QAEXVQString@@@Z @ 18 NONAME ; void QCPixSearcher::setDatabaseAsync(class QString) - ?handleDocument@QCPixSearcher@@IAEXHPAVQCPixDocument@@@Z @ 19 NONAME ; void QCPixSearcher::handleDocument(int, class QCPixDocument *) - ?newInstance@QCPixSearcher@@SAPAV1@XZ @ 20 NONAME ; class QCPixSearcher * QCPixSearcher::newInstance(void) - ?qt_metacall@QCPixDocumentField@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 21 NONAME ; int QCPixDocumentField::qt_metacall(enum QMetaObject::Call, int, void * *) - ?cancelSearch@QCPixSearcher@@QAEXXZ @ 22 NONAME ; void QCPixSearcher::cancelSearch(void) - ?getStaticMetaObject@QCPixDocumentField@@SAABUQMetaObject@@XZ @ 23 NONAME ; struct QMetaObject const & QCPixDocumentField::getStaticMetaObject(void) - ?field@QCPixDocument@@QBEABVQCPixDocumentField@@H@Z @ 24 NONAME ; class QCPixDocumentField const & QCPixDocument::field(int) const - ?handleDatabaseSet@QCPixSearcher@@IAEXH@Z @ 25 NONAME ; void QCPixSearcher::handleDatabaseSet(int) - ?trUtf8@QCPixSearcher@@SA?AVQString@@PBD0@Z @ 26 NONAME ; class QString QCPixSearcher::trUtf8(char const *, char const *) - ?metaObject@QCPixSearcher@@UBEPBUQMetaObject@@XZ @ 27 NONAME ; struct QMetaObject const * QCPixSearcher::metaObject(void) const - ?d_func@QCPixDocument@@ABEPBVQCPixDocumentPrivate@@XZ @ 28 NONAME ; class QCPixDocumentPrivate const * QCPixDocument::d_func(void) const - ?d_func@QCPixSearcher@@ABEPBVQCPixSearcherPrivate@@XZ @ 29 NONAME ; class QCPixSearcherPrivate const * QCPixSearcher::d_func(void) const - ?setDatabase@QCPixSearcher@@QAEXVQString@@@Z @ 30 NONAME ; void QCPixSearcher::setDatabase(class QString) - ?setValue@QCPixDocumentField@@QAEXVQString@@@Z @ 31 NONAME ; void QCPixDocumentField::setValue(class QString) - ?trUtf8@QCPixDocument@@SA?AVQString@@PBD0H@Z @ 32 NONAME ; class QString QCPixDocument::trUtf8(char const *, char const *, int) - ?getStaticMetaObject@QCPixSearcher@@SAABUQMetaObject@@XZ @ 33 NONAME ; struct QMetaObject const & QCPixSearcher::getStaticMetaObject(void) - ?value@QCPixDocumentField@@QBE?AVQString@@XZ @ 34 NONAME ; class QString QCPixDocumentField::value(void) const - ?handleSearchResults@QCPixSearcher@@IAEXHH@Z @ 35 NONAME ; void QCPixSearcher::handleSearchResults(int, int) - ?tr@QCPixSearcher@@SA?AVQString@@PBD0H@Z @ 36 NONAME ; class QString QCPixSearcher::tr(char const *, char const *, int) - ?getDocumentAsync@QCPixSearcher@@QAEXH@Z @ 37 NONAME ; void QCPixSearcher::getDocumentAsync(int) - ?config@QCPixDocumentField@@QBEHXZ @ 38 NONAME ; int QCPixDocumentField::config(void) const - ??_EQCPixDocument@@UAE@I@Z @ 39 NONAME ; QCPixDocument::~QCPixDocument(unsigned int) - ??_EQCPixSearcher@@UAE@I@Z @ 40 NONAME ; QCPixSearcher::~QCPixSearcher(unsigned int) - ??0QCPixSearcher@@AAE@VQString@@@Z @ 41 NONAME ; QCPixSearcher::QCPixSearcher(class QString) - ?staticMetaObject@QCPixDocument@@2UQMetaObject@@B @ 42 NONAME ; struct QMetaObject const QCPixDocument::staticMetaObject - ?fieldCount@QCPixDocument@@QBEHXZ @ 43 NONAME ; int QCPixDocument::fieldCount(void) const - ?trUtf8@QCPixDocument@@SA?AVQString@@PBD0@Z @ 44 NONAME ; class QString QCPixDocument::trUtf8(char const *, char const *) - ?baseAppClass@QCPixDocument@@QBE?AVQString@@XZ @ 45 NONAME ; class QString QCPixDocument::baseAppClass(void) const - ??1QCPixDocument@@UAE@XZ @ 46 NONAME ; QCPixDocument::~QCPixDocument(void) - ?d_func@QCPixDocumentField@@AAEPAVQCPixDocumentFieldPrivate@@XZ @ 47 NONAME ; class QCPixDocumentFieldPrivate * QCPixDocumentField::d_func(void) - ?tr@QCPixSearcher@@SA?AVQString@@PBD0@Z @ 48 NONAME ; class QString QCPixSearcher::tr(char const *, char const *) - ?d_func@QCPixDocumentField@@ABEPBVQCPixDocumentFieldPrivate@@XZ @ 49 NONAME ; class QCPixDocumentFieldPrivate const * QCPixDocumentField::d_func(void) const - ??0QCPixDocumentField@@AAE@VQString@@0H@Z @ 50 NONAME ; QCPixDocumentField::QCPixDocumentField(class QString, class QString, int) - ?trUtf8@QCPixDocumentField@@SA?AVQString@@PBD0H@Z @ 51 NONAME ; class QString QCPixDocumentField::trUtf8(char const *, char const *, int) - ?qt_metacast@QCPixDocument@@UAEPAXPBD@Z @ 52 NONAME ; void * QCPixDocument::qt_metacast(char const *) - ?searchAsync@QCPixSearcher@@QAEXVQString@@0@Z @ 53 NONAME ; void QCPixSearcher::searchAsync(class QString, class QString) - ?staticMetaObject@QCPixDocumentField@@2UQMetaObject@@B @ 54 NONAME ; struct QMetaObject const QCPixDocumentField::staticMetaObject - ?setConfig@QCPixDocumentField@@QAEXH@Z @ 55 NONAME ; void QCPixDocumentField::setConfig(int) - ?getStaticMetaObject@QCPixDocument@@SAABUQMetaObject@@XZ @ 56 NONAME ; struct QMetaObject const & QCPixDocument::getStaticMetaObject(void) - ?tr@QCPixDocumentField@@SA?AVQString@@PBD0@Z @ 57 NONAME ; class QString QCPixDocumentField::tr(char const *, char const *) - ?docId@QCPixDocument@@QBE?AVQString@@XZ @ 58 NONAME ; class QString QCPixDocument::docId(void) const - ?metaObject@QCPixDocument@@UBEPBUQMetaObject@@XZ @ 59 NONAME ; struct QMetaObject const * QCPixDocument::metaObject(void) const - ?newInstance@QCPixSearcher@@SAPAV1@VQString@@0@Z @ 60 NONAME ; class QCPixSearcher * QCPixSearcher::newInstance(class QString, class QString) - ?qt_metacall@QCPixDocument@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 61 NONAME ; int QCPixDocument::qt_metacall(enum QMetaObject::Call, int, void * *) - ?qt_metacall@QCPixSearcher@@UAEHW4Call@QMetaObject@@HPAPAX@Z @ 62 NONAME ; int QCPixSearcher::qt_metacall(enum QMetaObject::Call, int, void * *) - ?qt_metacast@QCPixDocumentField@@UAEPAXPBD@Z @ 63 NONAME ; void * QCPixDocumentField::qt_metacast(char const *) - ??0QCPixDocument@@AAE@XZ @ 64 NONAME ; QCPixDocument::QCPixDocument(void) - ?newInstance@QCPixDocumentField@@SAPAV1@VQString@@0H@Z @ 65 NONAME ; class QCPixDocumentField * QCPixDocumentField::newInstance(class QString, class QString, int) - ??1QCPixSearcher@@UAE@XZ @ 66 NONAME ; QCPixSearcher::~QCPixSearcher(void) - ?staticMetaObject@QCPixSearcher@@2UQMetaObject@@B @ 67 NONAME ; struct QMetaObject const QCPixSearcher::staticMetaObject - ?setBaseAppClass@QCPixDocument@@QAEXVQString@@@Z @ 68 NONAME ; void QCPixDocument::setBaseAppClass(class QString) - ??1QCPixDocumentField@@UAE@XZ @ 69 NONAME ; QCPixDocumentField::~QCPixDocumentField(void) - ?addField@QCPixDocument@@QAEXVQString@@0H@Z @ 70 NONAME ; void QCPixDocument::addField(class QString, class QString, int) - ?trUtf8@QCPixDocumentField@@SA?AVQString@@PBD0@Z @ 71 NONAME ; class QString QCPixDocumentField::trUtf8(char const *, char const *) - diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/cpix.pro --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/cpix.pro Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,22 @@ +# +# Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +# All rights reserved. +# This component and the accompanying materials are made available +# under the terms of "Eclipse Public License v1.0" +# which accompanies this distribution, and is available +# at the URL "http://www.eclipse.org/legal/epl-v10.html". +# +# Initial Contributors: +# Nokia Corporation - initial contribution. +# +# Contributors: +# +# Description: +# + +TEMPLATE = subdirs +CONFIG += ordered +SUBDIRS += cpixsearch.pro \ + tsrc/SampleSearch/SampleSearch.pro \ + tsrc/orbitsearch/orbitsearch.pro \ + tsrc/qtcpixunittests/qtcpixunittests.pro diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/cpixsearch.pro --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/cpixsearch.pro Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,68 @@ +# +# Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +# All rights reserved. +# This component and the accompanying materials are made available +# under the terms of "Eclipse Public License v1.0" +# which accompanies this distribution, and is available +# at the URL "http://www.eclipse.org/legal/epl-v10.html". +# +# Initial Contributors: +# Nokia Corporation - initial contribution. +# +# Contributors: +# +# Description: +# + +TEMPLATE = lib +TARGET = cpixsearch +QT += core +QT -= gui + +INCLUDEPATH += ../s60/searchclient/inc +INCLUDEPATH += ../cfg + +HEADERS += ../searchsrv_plat/cpix_search_api/inc/cpixcommon.h \ + ../searchsrv_plat/cpix_search_api/inc/cpixdocument.h \ + ../searchsrv_plat/cpix_search_api/inc/cpixdocumentfield.h \ + ../searchsrv_plat/cpix_search_api/inc/cpixsearcher.h + +SOURCES += src/cpixdocument.cpp \ + src/cpixdocumentfield.cpp \ + src/cpixsearcher.cpp + +DEFINES += BUILD_DLL + +symbian{ + TARGET.CAPABILITY = CAP_GENERAL_DLL -DRM + TARGET.EPOCALLOWDLLDATA = 1 + TARGET.UID3 = 0xE3B89364 + TARGET.VID = VID_DEFAULT + VERSION = 1.0.0 + LIBS += -leuser -lcpixsearchclient + + INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE + + HEADERS += src/platform/s60/inc/cpixdocumentprivate.h \ + src/platform/s60/inc/cpixdocumentfieldprivate.h \ + src/platform/s60/inc/cpixsearcherprivate.h \ + src/platform/s60/inc/cpixutils.h + + SOURCES += src/platform/s60/src/cpixdocumentfieldprivate.cpp \ + src/platform/s60/src/cpixsearcherprivate.cpp \ + src/platform/s60/src/cpixutils.cpp + + qcpixsearchclient.sources += /epoc32/release/armv5/urel/cpixsearch.dll + qcpixsearchclient.path = /sys/bin + DEPLOYMENT += cpixsearch + + defFileBlock = \ + "$${LITERAL_HASH}if defined(WINSCW)" \ + "DEFFILE bwins/" \ + "$${LITERAL_HASH}else" \ + "DEFFILE eabi/" \ + "$${LITERAL_HASH}endif" \ + + MMP_RULES += defFileBlock + +} \ No newline at end of file diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/eabi/cpixsearchu.def --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/eabi/cpixsearchu.def Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,67 @@ +EXPORTS + _ZN12CpixDocument10setExcerptE7QString @ 1 NONAME + _ZN12CpixDocument11newInstanceEv @ 2 NONAME + _ZN12CpixDocument11qt_metacallEN11QMetaObject4CallEiPPv @ 3 NONAME + _ZN12CpixDocument11qt_metacastEPKc @ 4 NONAME + _ZN12CpixDocument15setBaseAppClassE7QString @ 5 NONAME + _ZN12CpixDocument16staticMetaObjectE @ 6 NONAME DATA 16 + _ZN12CpixDocument19getStaticMetaObjectEv @ 7 NONAME + _ZN12CpixDocument8addFieldE7QStringS0_i @ 8 NONAME + _ZN12CpixDocument8setDocIdE7QString @ 9 NONAME + _ZN12CpixDocumentC1Ev @ 10 NONAME + _ZN12CpixDocumentC2Ev @ 11 NONAME + _ZN12CpixDocumentD0Ev @ 12 NONAME + _ZN12CpixDocumentD1Ev @ 13 NONAME + _ZN12CpixDocumentD2Ev @ 14 NONAME + _ZN12CpixSearcher11newInstanceE7QStringS0_ @ 15 NONAME + _ZN12CpixSearcher11newInstanceEv @ 16 NONAME + _ZN12CpixSearcher11qt_metacallEN11QMetaObject4CallEiPPv @ 17 NONAME + _ZN12CpixSearcher11qt_metacastEPKc @ 18 NONAME + _ZN12CpixSearcher11searchAsyncE7QStringS0_ @ 19 NONAME + _ZN12CpixSearcher11setDatabaseE7QString @ 20 NONAME + _ZN12CpixSearcher12cancelSearchEv @ 21 NONAME + _ZN12CpixSearcher13documentAsyncEi @ 22 NONAME + _ZN12CpixSearcher14handleDocumentEiP12CpixDocument @ 23 NONAME + _ZN12CpixSearcher16setDatabaseAsyncE7QString @ 24 NONAME + _ZN12CpixSearcher16staticMetaObjectE @ 25 NONAME DATA 16 + _ZN12CpixSearcher17handleDatabaseSetEi @ 26 NONAME + _ZN12CpixSearcher19getStaticMetaObjectEv @ 27 NONAME + _ZN12CpixSearcher19handleSearchResultsEii @ 28 NONAME + _ZN12CpixSearcher6searchE7QStringS0_ @ 29 NONAME + _ZN12CpixSearcher8documentEi @ 30 NONAME + _ZN12CpixSearcherC1Ev @ 31 NONAME + _ZN12CpixSearcherC2Ev @ 32 NONAME + _ZN12CpixSearcherD0Ev @ 33 NONAME + _ZN12CpixSearcherD1Ev @ 34 NONAME + _ZN12CpixSearcherD2Ev @ 35 NONAME + _ZN17CpixDocumentField11newInstanceE7QStringS0_i @ 36 NONAME + _ZN17CpixDocumentField11qt_metacallEN11QMetaObject4CallEiPPv @ 37 NONAME + _ZN17CpixDocumentField11qt_metacastEPKc @ 38 NONAME + _ZN17CpixDocumentField16staticMetaObjectE @ 39 NONAME DATA 16 + _ZN17CpixDocumentField19getStaticMetaObjectEv @ 40 NONAME + _ZN17CpixDocumentField7setNameE7QString @ 41 NONAME + _ZN17CpixDocumentField8setValueE7QString @ 42 NONAME + _ZN17CpixDocumentField9setConfigEi @ 43 NONAME + _ZN17CpixDocumentFieldC1E7QStringS0_i @ 44 NONAME + _ZN17CpixDocumentFieldC2E7QStringS0_i @ 45 NONAME + _ZN17CpixDocumentFieldD0Ev @ 46 NONAME + _ZN17CpixDocumentFieldD1Ev @ 47 NONAME + _ZN17CpixDocumentFieldD2Ev @ 48 NONAME + _ZNK12CpixDocument10fieldCountEv @ 49 NONAME + _ZNK12CpixDocument10metaObjectEv @ 50 NONAME + _ZNK12CpixDocument12baseAppClassEv @ 51 NONAME + _ZNK12CpixDocument5docIdEv @ 52 NONAME + _ZNK12CpixDocument5fieldEi @ 53 NONAME + _ZNK12CpixDocument7excerptEv @ 54 NONAME + _ZNK12CpixSearcher10metaObjectEv @ 55 NONAME + _ZNK17CpixDocumentField10metaObjectEv @ 56 NONAME + _ZNK17CpixDocumentField4nameEv @ 57 NONAME + _ZNK17CpixDocumentField5valueEv @ 58 NONAME + _ZNK17CpixDocumentField6configEv @ 59 NONAME + _ZTI12CpixDocument @ 60 NONAME + _ZTI12CpixSearcher @ 61 NONAME + _ZTI17CpixDocumentField @ 62 NONAME + _ZTV12CpixDocument @ 63 NONAME + _ZTV12CpixSearcher @ 64 NONAME + _ZTV17CpixDocumentField @ 65 NONAME + diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/eabi/qcpixsearchclientu.def --- a/qcpix/eabi/qcpixsearchclientu.def Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,67 +0,0 @@ -EXPORTS - _ZN13QCPixDocument10setExcerptE7QString @ 1 NONAME - _ZN13QCPixDocument11newInstanceEv @ 2 NONAME - _ZN13QCPixDocument11qt_metacallEN11QMetaObject4CallEiPPv @ 3 NONAME - _ZN13QCPixDocument11qt_metacastEPKc @ 4 NONAME - _ZN13QCPixDocument15setBaseAppClassE7QString @ 5 NONAME - _ZN13QCPixDocument16staticMetaObjectE @ 6 NONAME DATA 16 - _ZN13QCPixDocument19getStaticMetaObjectEv @ 7 NONAME - _ZN13QCPixDocument8addFieldE7QStringS0_i @ 8 NONAME - _ZN13QCPixDocument8setDocIdE7QString @ 9 NONAME - _ZN13QCPixDocumentC1Ev @ 10 NONAME - _ZN13QCPixDocumentC2Ev @ 11 NONAME - _ZN13QCPixDocumentD0Ev @ 12 NONAME - _ZN13QCPixDocumentD1Ev @ 13 NONAME - _ZN13QCPixDocumentD2Ev @ 14 NONAME - _ZN13QCPixSearcher11getDocumentEi @ 15 NONAME - _ZN13QCPixSearcher11newInstanceE7QStringS0_ @ 16 NONAME - _ZN13QCPixSearcher11newInstanceEv @ 17 NONAME - _ZN13QCPixSearcher11qt_metacallEN11QMetaObject4CallEiPPv @ 18 NONAME - _ZN13QCPixSearcher11qt_metacastEPKc @ 19 NONAME - _ZN13QCPixSearcher11searchAsyncE7QStringS0_ @ 20 NONAME - _ZN13QCPixSearcher11setDatabaseE7QString @ 21 NONAME - _ZN13QCPixSearcher12cancelSearchEv @ 22 NONAME - _ZN13QCPixSearcher14handleDocumentEiP13QCPixDocument @ 23 NONAME - _ZN13QCPixSearcher16getDocumentAsyncEi @ 24 NONAME - _ZN13QCPixSearcher16setDatabaseAsyncE7QString @ 25 NONAME - _ZN13QCPixSearcher16staticMetaObjectE @ 26 NONAME DATA 16 - _ZN13QCPixSearcher17handleDatabaseSetEi @ 27 NONAME - _ZN13QCPixSearcher19getStaticMetaObjectEv @ 28 NONAME - _ZN13QCPixSearcher19handleSearchResultsEii @ 29 NONAME - _ZN13QCPixSearcher6searchE7QStringS0_ @ 30 NONAME - _ZN13QCPixSearcherC1E7QString @ 31 NONAME - _ZN13QCPixSearcherC2E7QString @ 32 NONAME - _ZN13QCPixSearcherD0Ev @ 33 NONAME - _ZN13QCPixSearcherD1Ev @ 34 NONAME - _ZN13QCPixSearcherD2Ev @ 35 NONAME - _ZN18QCPixDocumentField11newInstanceE7QStringS0_i @ 36 NONAME - _ZN18QCPixDocumentField11qt_metacallEN11QMetaObject4CallEiPPv @ 37 NONAME - _ZN18QCPixDocumentField11qt_metacastEPKc @ 38 NONAME - _ZN18QCPixDocumentField16staticMetaObjectE @ 39 NONAME DATA 16 - _ZN18QCPixDocumentField19getStaticMetaObjectEv @ 40 NONAME - _ZN18QCPixDocumentField7setNameE7QString @ 41 NONAME - _ZN18QCPixDocumentField8setValueE7QString @ 42 NONAME - _ZN18QCPixDocumentField9setConfigEi @ 43 NONAME - _ZN18QCPixDocumentFieldC1E7QStringS0_i @ 44 NONAME - _ZN18QCPixDocumentFieldC2E7QStringS0_i @ 45 NONAME - _ZN18QCPixDocumentFieldD0Ev @ 46 NONAME - _ZN18QCPixDocumentFieldD1Ev @ 47 NONAME - _ZN18QCPixDocumentFieldD2Ev @ 48 NONAME - _ZNK13QCPixDocument10fieldCountEv @ 49 NONAME - _ZNK13QCPixDocument10metaObjectEv @ 50 NONAME - _ZNK13QCPixDocument12baseAppClassEv @ 51 NONAME - _ZNK13QCPixDocument5docIdEv @ 52 NONAME - _ZNK13QCPixDocument5fieldEi @ 53 NONAME - _ZNK13QCPixDocument7excerptEv @ 54 NONAME - _ZNK13QCPixSearcher10metaObjectEv @ 55 NONAME - _ZNK18QCPixDocumentField10metaObjectEv @ 56 NONAME - _ZNK18QCPixDocumentField4nameEv @ 57 NONAME - _ZNK18QCPixDocumentField5valueEv @ 58 NONAME - _ZNK18QCPixDocumentField6configEv @ 59 NONAME - _ZTI13QCPixDocument @ 60 NONAME - _ZTI13QCPixSearcher @ 61 NONAME - _ZTI18QCPixDocumentField @ 62 NONAME - _ZTV13QCPixDocument @ 63 NONAME - _ZTV13QCPixSearcher @ 64 NONAME - _ZTV18QCPixDocumentField @ 65 NONAME - diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/qcpix.pro --- a/qcpix/qcpix.pro Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -# -# Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -# All rights reserved. -# This component and the accompanying materials are made available -# under the terms of "Eclipse Public License v1.0" -# which accompanies this distribution, and is available -# at the URL "http://www.eclipse.org/legal/epl-v10.html". -# -# Initial Contributors: -# Nokia Corporation - initial contribution. -# -# Contributors: -# -# Description: -# - -TEMPLATE = subdirs -CONFIG += ordered -SUBDIRS += qcpixsearchclient.pro \ - tsrc/SampleSearch/SampleSearch.pro \ - tsrc/orbitsearch/orbitsearch.pro \ - tsrc/qtcpixunittests/qtcpixunittests.pro diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/qcpixsearchclient.pro --- a/qcpix/qcpixsearchclient.pro Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,68 +0,0 @@ -# -# Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -# All rights reserved. -# This component and the accompanying materials are made available -# under the terms of "Eclipse Public License v1.0" -# which accompanies this distribution, and is available -# at the URL "http://www.eclipse.org/legal/epl-v10.html". -# -# Initial Contributors: -# Nokia Corporation - initial contribution. -# -# Contributors: -# -# Description: -# - -TEMPLATE = lib -TARGET = qcpixsearchclient -QT += core -QT -= gui - -INCLUDEPATH += ../s60/searchclient/inc -INCLUDEPATH += ../cfg - -HEADERS += ../searchsrv_plat/cpix_search_api/inc/qcpixcommon.h \ - ../searchsrv_plat/cpix_search_api/inc/qcpixdocument.h \ - ../searchsrv_plat/cpix_search_api/inc/qcpixdocumentfield.h \ - ../searchsrv_plat/cpix_search_api/inc/qcpixsearcher.h - -SOURCES += src/qcpixdocument.cpp \ - src/qcpixdocumentfield.cpp \ - src/qcpixsearcher.cpp - -DEFINES += BUILD_DLL - -symbian{ - TARGET.CAPABILITY = CAP_GENERAL_DLL - TARGET.EPOCALLOWDLLDATA = 1 - TARGET.UID3 = 0xE3B89364 - TARGET.VID = VID_DEFAULT - VERSION = 1.0.0 - LIBS += -leuser -lcpixsearchclient - - INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE - - HEADERS += src/platform/s60/inc/qcpixdocumentprivate.h \ - src/platform/s60/inc/qcpixdocumentfieldprivate.h \ - src/platform/s60/inc/qcpixsearcherprivate.h \ - src/platform/s60/inc/qcpixutils.h - - SOURCES += src/platform/s60/src/qcpixdocumentfieldprivate.cpp \ - src/platform/s60/src/qcpixsearcherprivate.cpp \ - src/platform/s60/src/qcpixutils.cpp - - qcpixsearchclient.sources += /epoc32/release/armv5/urel/qcpixsearchclient.dll - qcpixsearchclient.path = /sys/bin - DEPLOYMENT += qcpixsearchclient - - defFileBlock = \ - "$${LITERAL_HASH}if defined(WINSCW)" \ - "DEFFILE bwins/" \ - "$${LITERAL_HASH}else" \ - "DEFFILE eabi/" \ - "$${LITERAL_HASH}endif" \ - - MMP_RULES += defFileBlock - -} \ No newline at end of file diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/cpixdocument.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/cpixdocument.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,95 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#include +#include +#include "cpixdocumentprivate.h" + +/** + * Note: Code in this file should never throw OR leak symbian exceptions. + * Convert all leaves to C++ exceptions. + */ + +CpixDocument::CpixDocument() + :iPvtImpl( new CpixDocumentPrivate() ) + { + } + +CpixDocument* CpixDocument::newInstance() + { + CpixDocument* doc = NULL; + try{ + doc = new CpixDocument(); + } + catch(...){ + delete doc; + return NULL; + } + return doc; + } + +CpixDocument::~CpixDocument() + { + delete iPvtImpl; + } + +QString CpixDocument::docId() const + { + return iPvtImpl->iDocId; + } + +QString CpixDocument::excerpt() const + { + return iPvtImpl->iExcerpt; + } + +QString CpixDocument::baseAppClass() const + { + return iPvtImpl->iBaseAppClass; + } + +const CpixDocumentField& CpixDocument::field( const int aIndex ) const + { + return *(iPvtImpl->iFields.at(aIndex)); + } + +int CpixDocument::fieldCount() const + { + return iPvtImpl->iFields.count(); + } + +void CpixDocument::setDocId(const QString aDocId) + { + iPvtImpl->iDocId = aDocId; + } + +void CpixDocument::setExcerpt(const QString aExcerpt) + { + iPvtImpl->iExcerpt = aExcerpt; + } + +void CpixDocument::setBaseAppClass(const QString aBaseAppClass) + { + iPvtImpl->iBaseAppClass = aBaseAppClass; + } + +void CpixDocument::addField(const QString aName, const QString aValue, const int aConfig) + { + iPvtImpl->iFields.append( CpixDocumentField::newInstance( aName, aValue, aConfig ) ); + } + +//End of File diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/cpixdocumentfield.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/cpixdocumentfield.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,79 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#include +#include "cpixdocumentfieldprivate.h" + +/** + * Note: Code in this file should never throw OR leak symbian exceptions. + * Convert all leaves to C++ exceptions. + */ + +CpixDocumentField::CpixDocumentField( const QString aName, const QString aValue, const int aConfig ) + :iPvtImpl( new CpixDocumentFieldPrivate(aName,aValue,aConfig) ) + { + } + +CpixDocumentField* CpixDocumentField::newInstance( const QString aName, const QString aValue, const int aConfig ) + { + CpixDocumentField* field = NULL; + try{ + field = new CpixDocumentField( aName, aValue, aConfig ); + } + catch(...){ + delete field; + return NULL; + } + return field; + } + +CpixDocumentField::~CpixDocumentField() + { + delete iPvtImpl; + } + +QString CpixDocumentField::name() const + { + return iPvtImpl->iName; + } + +QString CpixDocumentField::value() const + { + return iPvtImpl->iValue; + } + +int CpixDocumentField::config() const + { + return iPvtImpl->iConfig; + } + +void CpixDocumentField::setName(const QString aName) + { + iPvtImpl->iName = aName; + } + +void CpixDocumentField::setValue(const QString aValue) + { + iPvtImpl->iValue = aValue; + } + +void CpixDocumentField::setConfig(const int aConfig) + { + iPvtImpl->iConfig = aConfig; + } + +//End of File diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/cpixsearcher.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/cpixsearcher.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,149 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#include +#include +#include +#include + +#include "cpixsearcherprivate.h" +#include "cpixutils.h" + +/** + * Note: Code in this file should never throw OR leak symbian exceptions. + * Convert all leaves to C++ exceptions. + */ + +CpixSearcher::CpixSearcher() + :iPvtImpl( new CpixSearcherPrivate( this ) ) + { + PERF_SEARCH_START_TIMER + PERF_GETDOC_START_TIMER + } + +CpixSearcher::~CpixSearcher() + { + delete iPvtImpl; + } + +CpixSearcher* CpixSearcher::newInstance() + { + CpixSearcher* searcher = NULL; + try{ + searcher = new CpixSearcher(); + searcher->iPvtImpl->Construct( QString() ); + } + catch(...){ + delete searcher; + return NULL; + } + return searcher; + } + +CpixSearcher* CpixSearcher::newInstance( QString aBaseAppClass, QString aDefaultSearchField ) + { + CpixSearcher* searcher = NULL; + try{ + searcher = new CpixSearcher(); + searcher->iPvtImpl->Construct( aDefaultSearchField ); + searcher->setDatabase( aBaseAppClass ); + } + catch(...){ + delete searcher->iPvtImpl; + return NULL; + } + return searcher; + } + +void CpixSearcher::setDatabase( QString aBaseAppClass ) + { + QT_TRAP_THROWING( + TBuf baseAppClass( aBaseAppClass.utf16() ); + iPvtImpl->iSearcher->OpenDatabaseL( baseAppClass ) ; + ); //end of QT_TRAP_THROWING + } + +void CpixSearcher::setDatabaseAsync( QString aBaseAppClass ) + { + QT_TRAP_THROWING( + TBuf baseAppClass( aBaseAppClass.utf16() ); + iPvtImpl->iSearcher->OpenDatabaseL( *iPvtImpl, baseAppClass ) + ); //end of QT_TRAP_THROWING + } + +//The following bit of code is common to two functions - this helps to avoid duplication. +//However, macros make debugging difficult - so, if you need to debug, copy the code below +//and replace the macro, fix the code and bring the fix back to the macro. +#define CREATE_SEARCH_VARS \ + HBufC* searchString = HBufC::NewL( aSearchString.length() + 1 ); \ + TPtrC searchStringPtr( reinterpret_cast( aSearchString.utf16() ) ); \ + searchString->Des().Copy( searchStringPtr ); \ + \ + HBufC* defaultSearchField = HBufC::NewL( aDefaultSearchField.length() + 1 ); \ + TPtrC aDefaultSearchFieldPtr( reinterpret_cast( aDefaultSearchField.utf16() ) );\ + defaultSearchField->Des().Copy( aDefaultSearchFieldPtr ); + +#define DELETE_SEARCH_VARS \ + delete searchString;\ + delete defaultSearchField; + +int CpixSearcher::search( QString aSearchString, QString aDefaultSearchField ) + { + PERF_SEARCH_RESTART_TIMER + int tmp = 0; + QT_TRAP_THROWING( + CREATE_SEARCH_VARS; + //ideally would have had just the following single line: + //QT_TRAP_THROWING( return iPvtImpl->iSearcher->SearchL( searchString, defaultSearchField ) ); + //But the RCVT compiler throws up warnings. The following is just to suppress those warnings. + tmp = iPvtImpl->iSearcher->SearchL( *searchString, *defaultSearchField ); + DELETE_SEARCH_VARS; + ); //QT_TRAP_THROWING + + PERF_SEARCH_ENDLOG + return tmp; + } + +void CpixSearcher::searchAsync( QString aSearchString, QString aDefaultSearchField ) + { + PERF_TIME_NOW("Async search start") + QT_TRAP_THROWING( + CREATE_SEARCH_VARS; + iPvtImpl->iSearcher->SearchL( *iPvtImpl, *searchString, *defaultSearchField ); + DELETE_SEARCH_VARS; + ); //QT_TRAP_THROWING + } + +CpixDocument* CpixSearcher::document( int aIndex ) + { + PERF_GETDOC_RESTART_TIMER + CpixDocument* tmp = 0; + QT_TRAP_THROWING( tmp = CpixDocFromCSearchDocument( iPvtImpl->iSearcher->GetDocumentL( aIndex ) ) ); + PERF_GETDOC_ENDLOG + return tmp; + } + +void CpixSearcher::documentAsync( int aIndex ) + { + PERF_TIME_NOW("Async get document start") + QT_TRAP_THROWING( iPvtImpl->iSearcher->GetDocumentL( aIndex, *iPvtImpl ) ); + } + +void CpixSearcher::cancelSearch() + { + iPvtImpl->iSearcher->Cancel(); + } diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/inc/cpixdocumentfieldprivate.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/platform/s60/inc/cpixdocumentfieldprivate.h Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,33 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#ifndef _CPIXDOCUMENTFIELDPVTIMPL_H +#define _CPIXDOCUMENTFIELDPVTIMPL_H + +#include + +class CpixDocumentFieldPrivate: public QObject +{ +public: + CpixDocumentFieldPrivate(const QString aName,const QString aValue,const int aConfig); + ~CpixDocumentFieldPrivate(); + QString iName; + QString iValue; + int iConfig; +}; + +#endif // _CPIXDOCUMENTFIELDPVTIMPL_H diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/inc/cpixdocumentprivate.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/platform/s60/inc/cpixdocumentprivate.h Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,37 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#ifndef _CPIXDOCUMENTPVTIMPL_H +#define _CPIXDOCUMENTPVTIMPL_H + +#include +#include +#include "cpixdocumentfield.h" + +//Forward Declarations +class CpixDocumentField; + +class CpixDocumentPrivate: public QObject +{ +public: + QString iDocId; + QString iExcerpt; + QString iBaseAppClass; + QList< CpixDocumentField* > iFields; +}; + +#endif //_CPIXDOCUMENTPVTIMPL_H diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/inc/cpixsearcherprivate.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/platform/s60/inc/cpixsearcherprivate.h Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,56 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#ifndef _CPIXSEARCHER_PVTIMPL_H +#define _CPIXSEARCHER_PVTIMPL_H + +#include +#include +#include +#include +#include + +//forward Declarations +class CCPixSearcher; +class CDocument; +class RSearchServerSession; +class CpixSearcher; + +class CpixSearcherPrivate : public CBase, //can this be made QObject? + public MCPixSearchRequestObserver , + public MCPixNextDocumentRequestObserver, + public MCPixOpenDatabaseRequestObserver, + public MCPixSetAnalyzerRequestObserver +{ +public: + CpixSearcherPrivate(QObject* aParent); + void Construct( QString aDefaultSearchField ); + ~CpixSearcherPrivate(); + +public : + void HandleSearchResultsL(TInt aError, TInt aEstimatedResultCount); //from MCPixSearchRequestObserver + void HandleDocumentL(TInt aError, CSearchDocument* aDocument); // from MCPixNextDocumentRequestObserver + void HandleOpenDatabaseResultL( TInt aError ); //MCPixOpenDatabaseRequestObserver + void HandleSetAnalyzerResultL( TInt aError ); //MCPixSetAnalyzerRequestObserver + +public: //Keep these to avoid wrapper functions. + RSearchServerSession iSearchSession; //owned + CCPixSearcher* iSearcher; //owned + CpixSearcher* iSearchParent; //not owned. +}; + +#endif //_CPIXSEARCHER_PVTIMPL_H diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/inc/cpixutils.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/platform/s60/inc/cpixutils.h Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,35 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#ifndef CPIXUTILS_H_ +#define CPIXUTILS_H_ + +/** + * Helper to convert symbian descriptor to QString. + * @param aDesc the descriptor to be converted to QString. + * @return QString representation of the descriptor. + */ +QString QStringFromDescriptor( const TDesC& aDesc ); + +/** + * Gets a QCPixDocument from CSearchDocument + * @param aDoc CSearchDocument to be converted to QCPixDocument. Takes ownership of aDoc. + * @return QCPixDocument representation of aDoc. Ownership transferred to caller. + */ +CpixDocument* CpixDocFromCSearchDocument( CSearchDocument* aDoc ); + +#endif /* QCPIXUTILS_H_ */ diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/inc/qcpixdocumentfieldprivate.h --- a/qcpix/src/platform/s60/inc/qcpixdocumentfieldprivate.h Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef _QCPIXDOCUMENTFIELDPVTIMPL_H -#define _QCPIXDOCUMENTFIELDPVTIMPL_H - -#include - -class QCPixDocumentFieldPrivate: public QObject -{ -public: - QCPixDocumentFieldPrivate(const QString aName,const QString aValue,const int aConfig); - ~QCPixDocumentFieldPrivate(); - QString iName; - QString iValue; - int iConfig; -}; - -#endif // _QCPIXDOCUMENTFIELDPVTIMPL_H diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/inc/qcpixdocumentprivate.h --- a/qcpix/src/platform/s60/inc/qcpixdocumentprivate.h Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef _QCPIXDOCUMENTPVTIMPL_H -#define _QCPIXDOCUMENTPVTIMPL_H - -#include -#include -#include "qcpixdocumentfield.h" - -//Forward Declarations -class QCPixDocumentField; - -class QCPixDocumentPrivate: public QObject -{ -public: - QString iDocId; - QString iExcerpt; - QString iBaseAppClass; - QList< QCPixDocumentField* > iFields; -}; - -#endif //_QCPIXDOCUMENTPVTIMPL_H diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/inc/qcpixsearcherprivate.h --- a/qcpix/src/platform/s60/inc/qcpixsearcherprivate.h Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,56 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef _QCPIXSEARCHER_PVTIMPL_H -#define _QCPIXSEARCHER_PVTIMPL_H - -#include -#include -#include -#include -#include - -//forward Declarations -class CCPixSearcher; -class CDocument; -class RSearchServerSession; -class QCPixSearcher; - -class QCPixSearcherPrivate : public CBase, //can this be made QObject? - public MCPixSearchRequestObserver , - public MCPixNextDocumentRequestObserver, - public MCPixOpenDatabaseRequestObserver, - public MCPixSetAnalyzerRequestObserver -{ -public: - QCPixSearcherPrivate(QObject* aParent); - void Construct( QString aDefaultSearchField ); - ~QCPixSearcherPrivate(); - -public : - void HandleSearchResultsL(TInt aError, TInt aEstimatedResultCount); //from MCPixSearchRequestObserver - void HandleDocumentL(TInt aError, CSearchDocument* aDocument); // from MCPixNextDocumentRequestObserver - void HandleOpenDatabaseResultL( TInt aError ); //MCPixOpenDatabaseRequestObserver - void HandleSetAnalyzerResultL( TInt aError ); //MCPixSetAnalyzerRequestObserver - -public: //Keep these to avoid wrapper functions. - RSearchServerSession iSearchSession; //owned - CCPixSearcher* iSearcher; //owned - QCPixSearcher* iSearchParent; //not owned. -}; - -#endif //_QCPIXSEARCHER_PVTIMPL_H diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/inc/qcpixutils.h --- a/qcpix/src/platform/s60/inc/qcpixutils.h Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,35 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef QCPIXUTILS_H_ -#define QCPIXUTILS_H_ - -/** - * Helper to convert symbian descriptor to QString. - * @param aDesc the descriptor to be converted to QString. - * @return QString representation of the descriptor. - */ -QString QStringFromDescriptor( const TDesC& aDesc ); - -/** - * Gets a QCPixDocument from CSearchDocument - * @param aDoc CSearchDocument to be converted to QCPixDocument. Takes ownership of aDoc. - * @return QCPixDocument representation of aDoc. Ownership transferred to caller. - */ -QCPixDocument* QCPixDocFromCPixDoc( CSearchDocument* aDoc ); - -#endif /* QCPIXUTILS_H_ */ diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/src/cpixdocumentfieldprivate.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/platform/s60/src/cpixdocumentfieldprivate.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,29 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#include "cpixdocumentfieldprivate.h" + +CpixDocumentFieldPrivate::CpixDocumentFieldPrivate(const QString aName,const QString aValue,const int aConfig) + { + iName = aName; + iValue = aValue; + iConfig = aConfig; + } + +CpixDocumentFieldPrivate::~CpixDocumentFieldPrivate() + { + } diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/src/cpixsearcherprivate.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/platform/s60/src/cpixsearcherprivate.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,70 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#include "cpixsearcherprivate.h" +#include +#include +#include + +#include "cpixutils.h" + +/** + * Note: Code in this file should never throw OR leak symbian exceptions. + * Convert all leaves to C++ exceptions. + */ + +CpixSearcherPrivate::CpixSearcherPrivate( QObject* aParent ) + { + iSearchParent = reinterpret_cast( aParent ); + } + +void CpixSearcherPrivate::Construct( QString aDefaultSearchField ) + { + qt_symbian_throwIfError( iSearchSession.Connect() );//throw exception on error. + QT_TRAP_THROWING( + TBuf defaultSearchField( aDefaultSearchField.utf16() ); + iSearcher = CCPixSearcher::NewL( iSearchSession, defaultSearchField ) + ); //end of QT_TRAP_THROWING + } + +CpixSearcherPrivate::~CpixSearcherPrivate() + { + delete iSearcher; + //iSearchSession.Close(); + } + +void CpixSearcherPrivate::HandleSearchResultsL(TInt aError, TInt aEstimatedResultCount) + { + PERF_TIME_NOW("Async search complete"); + emit iSearchParent->handleSearchResults( aError, aEstimatedResultCount ); + } + +void CpixSearcherPrivate::HandleDocumentL(TInt aError, CSearchDocument* aDocument) + { + PERF_TIME_NOW("Async get document complete") + emit iSearchParent->handleDocument( aError, CpixDocFromCSearchDocument( aDocument ) ); + } + +void CpixSearcherPrivate::HandleOpenDatabaseResultL( TInt aError ) + { + emit iSearchParent->handleDatabaseSet( aError ); + } + +void CpixSearcherPrivate::HandleSetAnalyzerResultL( TInt /*aError*/ ) + { + //what is to be done here? + } diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/src/cpixutils.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/qcpix/src/platform/s60/src/cpixutils.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,45 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#include +#include +#include +#include "cpixutils.h" + +QString QStringFromDescriptor( const TDesC& aDesc ) + { + return QString::fromUtf16( aDesc.Ptr(), aDesc.Length() ); + } + +CpixDocument* CpixDocFromCSearchDocument( CSearchDocument* aDoc ) + { + if( aDoc == NULL ) return NULL; + + CpixDocument* cpixDoc = CpixDocument::newInstance(); + cpixDoc->setBaseAppClass( QStringFromDescriptor( aDoc->AppClass() ) ); + cpixDoc->setDocId( QStringFromDescriptor( aDoc->Id() ) ); + cpixDoc->setExcerpt( QStringFromDescriptor( aDoc->Excerpt() ) ); + + int fieldCount = aDoc->FieldCount(); + for( int i=0; iField( i ); + cpixDoc->addField( QStringFromDescriptor( field.Name() ), QStringFromDescriptor( field.Value() ), field.Config() ); + } + + delete aDoc; + return cpixDoc; + } diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/src/qcpixdocumentfieldprivate.cpp --- a/qcpix/src/platform/s60/src/qcpixdocumentfieldprivate.cpp Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#include "qcpixdocumentfieldprivate.h" - -QCPixDocumentFieldPrivate::QCPixDocumentFieldPrivate(const QString aName,const QString aValue,const int aConfig) - { - iName = aName; - iValue = aValue; - iConfig = aConfig; - } - -QCPixDocumentFieldPrivate::~QCPixDocumentFieldPrivate() - { - } diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/src/qcpixsearcherprivate.cpp --- a/qcpix/src/platform/s60/src/qcpixsearcherprivate.cpp Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,70 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#include "qcpixsearcherprivate.h" -#include -#include -#include - -#include "qcpixutils.h" - -/** - * Note: Code in this file should never throw OR leak symbian exceptions. - * Convert all leaves to C++ exceptions. - */ - -QCPixSearcherPrivate::QCPixSearcherPrivate( QObject* aParent ) - { - iSearchParent = reinterpret_cast( aParent ); - } - -void QCPixSearcherPrivate::Construct( QString aDefaultSearchField ) - { - qt_symbian_throwIfError( iSearchSession.Connect() );//throw exception on error. - QT_TRAP_THROWING( - TBuf defaultSearchField( aDefaultSearchField.utf16() ); - iSearcher = CCPixSearcher::NewL( iSearchSession, defaultSearchField ) - ); //end of QT_TRAP_THROWING - } - -QCPixSearcherPrivate::~QCPixSearcherPrivate() - { - delete iSearcher; - //iSearchSession.Close(); - } - -void QCPixSearcherPrivate::HandleSearchResultsL(TInt aError, TInt aEstimatedResultCount) - { - PERF_TIME_NOW("Async search complete"); - emit iSearchParent->handleSearchResults( aError, aEstimatedResultCount ); - } - -void QCPixSearcherPrivate::HandleDocumentL(TInt aError, CSearchDocument* aDocument) - { - PERF_TIME_NOW("Async get document complete") - emit iSearchParent->handleDocument( aError, QCPixDocFromCPixDoc( aDocument ) ); - } - -void QCPixSearcherPrivate::HandleOpenDatabaseResultL( TInt aError ) - { - emit iSearchParent->handleDatabaseSet( aError ); - } - -void QCPixSearcherPrivate::HandleSetAnalyzerResultL( TInt /*aError*/ ) - { - //what is to be done here? - } diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/platform/s60/src/qcpixutils.cpp --- a/qcpix/src/platform/s60/src/qcpixutils.cpp Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#include -#include -#include -#include "qcpixutils.h" - -QString QStringFromDescriptor( const TDesC& aDesc ) - { - return QString::fromUtf16( aDesc.Ptr(), aDesc.Length() ); - } - -QCPixDocument* QCPixDocFromCPixDoc( CSearchDocument* aDoc ) - { - if( aDoc == NULL ) return NULL; - - QCPixDocument* cpixDoc = QCPixDocument::newInstance(); - cpixDoc->setBaseAppClass( QStringFromDescriptor( aDoc->AppClass() ) ); - cpixDoc->setDocId( QStringFromDescriptor( aDoc->Id() ) ); - cpixDoc->setExcerpt( QStringFromDescriptor( aDoc->Excerpt() ) ); - - int fieldCount = aDoc->FieldCount(); - for( int i=0; iField( i ); - cpixDoc->addField( QStringFromDescriptor( field.Name() ), QStringFromDescriptor( field.Value() ), field.Config() ); - } - - delete aDoc; - return cpixDoc; - } diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/qcpixdocument.cpp --- a/qcpix/src/qcpixdocument.cpp Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,95 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#include -#include -#include "qcpixdocumentprivate.h" - -/** - * Note: Code in this file should never throw OR leak symbian exceptions. - * Convert all leaves to C++ exceptions. - */ - -QCPixDocument::QCPixDocument() - :iPvtImpl( new QCPixDocumentPrivate() ) - { - } - -QCPixDocument* QCPixDocument::newInstance() - { - QCPixDocument* doc = NULL; - try{ - doc = new QCPixDocument(); - } - catch(...){ - delete doc; - return NULL; - } - return doc; - } - -QCPixDocument::~QCPixDocument() - { - delete iPvtImpl; - } - -QString QCPixDocument::docId() const - { - return iPvtImpl->iDocId; - } - -QString QCPixDocument::excerpt() const - { - return iPvtImpl->iExcerpt; - } - -QString QCPixDocument::baseAppClass() const - { - return iPvtImpl->iBaseAppClass; - } - -const QCPixDocumentField& QCPixDocument::field( const int aIndex ) const - { - return *(iPvtImpl->iFields.at(aIndex)); - } - -int QCPixDocument::fieldCount() const - { - return iPvtImpl->iFields.count(); - } - -void QCPixDocument::setDocId(const QString aDocId) - { - iPvtImpl->iDocId = aDocId; - } - -void QCPixDocument::setExcerpt(const QString aExcerpt) - { - iPvtImpl->iExcerpt = aExcerpt; - } - -void QCPixDocument::setBaseAppClass(const QString aBaseAppClass) - { - iPvtImpl->iBaseAppClass = aBaseAppClass; - } - -void QCPixDocument::addField(const QString aName, const QString aValue, const int aConfig) - { - iPvtImpl->iFields.append( QCPixDocumentField::newInstance( aName, aValue, aConfig ) ); - } - -//End of File diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/qcpixdocumentfield.cpp --- a/qcpix/src/qcpixdocumentfield.cpp Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,79 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#include -#include "qcpixdocumentfieldprivate.h" - -/** - * Note: Code in this file should never throw OR leak symbian exceptions. - * Convert all leaves to C++ exceptions. - */ - -QCPixDocumentField::QCPixDocumentField( const QString aName, const QString aValue, const int aConfig ) - :iPvtImpl( new QCPixDocumentFieldPrivate(aName,aValue,aConfig) ) - { - } - -QCPixDocumentField* QCPixDocumentField::newInstance( const QString aName, const QString aValue, const int aConfig ) - { - QCPixDocumentField* field = NULL; - try{ - field = new QCPixDocumentField( aName, aValue, aConfig ); - } - catch(...){ - delete field; - return NULL; - } - return field; - } - -QCPixDocumentField::~QCPixDocumentField() - { - delete iPvtImpl; - } - -QString QCPixDocumentField::name() const - { - return iPvtImpl->iName; - } - -QString QCPixDocumentField::value() const - { - return iPvtImpl->iValue; - } - -int QCPixDocumentField::config() const - { - return iPvtImpl->iConfig; - } - -void QCPixDocumentField::setName(const QString aName) - { - iPvtImpl->iName = aName; - } - -void QCPixDocumentField::setValue(const QString aValue) - { - iPvtImpl->iValue = aValue; - } - -void QCPixDocumentField::setConfig(const int aConfig) - { - iPvtImpl->iConfig = aConfig; - } - -//End of File diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/src/qcpixsearcher.cpp --- a/qcpix/src/qcpixsearcher.cpp Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,149 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#include -#include -#include -#include - -#include "qcpixsearcherprivate.h" -#include "qcpixutils.h" - -/** - * Note: Code in this file should never throw OR leak symbian exceptions. - * Convert all leaves to C++ exceptions. - */ - -QCPixSearcher::QCPixSearcher( QString aDefaultSearchField ) - :iPvtImpl( new QCPixSearcherPrivate( this ) ) - { - PERF_SEARCH_START_TIMER - PERF_GETDOC_START_TIMER - } - -QCPixSearcher::~QCPixSearcher() - { - delete iPvtImpl; - } - -QCPixSearcher* QCPixSearcher::newInstance() - { - QCPixSearcher* searcher = NULL; - try{ - searcher = new QCPixSearcher( QString() ); - searcher->iPvtImpl->Construct( QString() ); - } - catch(...){ - delete searcher; - return NULL; - } - return searcher; - } - -QCPixSearcher* QCPixSearcher::newInstance( QString aBaseAppClass, QString aDefaultSearchField ) - { - QCPixSearcher* searcher = NULL; - try{ - searcher = new QCPixSearcher( aDefaultSearchField ); - searcher->iPvtImpl->Construct( aDefaultSearchField ); - searcher->setDatabase( aBaseAppClass ); - } - catch(...){ - delete searcher->iPvtImpl; - return NULL; - } - return searcher; - } - -void QCPixSearcher::setDatabase( QString aBaseAppClass ) - { - QT_TRAP_THROWING( - TBuf baseAppClass( aBaseAppClass.utf16() ); - iPvtImpl->iSearcher->OpenDatabaseL( baseAppClass ) - ); //end of QT_TRAP_THROWING - } - -void QCPixSearcher::setDatabaseAsync( QString aBaseAppClass ) - { - QT_TRAP_THROWING( - TBuf baseAppClass( aBaseAppClass.utf16() ); - iPvtImpl->iSearcher->OpenDatabaseL( *iPvtImpl, baseAppClass ) - ); //end of QT_TRAP_THROWING - } - -//The following bit of code is common to two functions - this helps to avoid duplication. -//However, macros make debugging difficult - so, if you need to debug, copy the code below -//and replace the macro, fix the code and bring the fix back to the macro. -#define CREATE_SEARCH_VARS \ - HBufC* searchString = HBufC::NewL( aSearchString.length() + 1 ); \ - TPtrC searchStringPtr( reinterpret_cast( aSearchString.utf16() ) ); \ - searchString->Des().Copy( searchStringPtr ); \ - \ - HBufC* defaultSearchField = HBufC::NewL( aDefaultSearchField.length() + 1 ); \ - TPtrC aDefaultSearchFieldPtr( reinterpret_cast( aDefaultSearchField.utf16() ) );\ - defaultSearchField->Des().Copy( aDefaultSearchFieldPtr ); - -#define DELETE_SEARCH_VARS \ - delete searchString;\ - delete defaultSearchField; - -int QCPixSearcher::search( QString aSearchString, QString aDefaultSearchField ) - { - PERF_SEARCH_RESTART_TIMER - int tmp = 0; - QT_TRAP_THROWING( - CREATE_SEARCH_VARS; - //ideally would have had just the following single line: - //QT_TRAP_THROWING( return iPvtImpl->iSearcher->SearchL( searchString, defaultSearchField ) ); - //But the RCVT compiler throws up warnings. The following is just to suppress those warnings. - tmp = iPvtImpl->iSearcher->SearchL( *searchString, *defaultSearchField ); - DELETE_SEARCH_VARS; - ); //QT_TRAP_THROWING - - PERF_SEARCH_ENDLOG - return tmp; - } - -void QCPixSearcher::searchAsync( QString aSearchString, QString aDefaultSearchField ) - { - PERF_TIME_NOW("Async search start") - QT_TRAP_THROWING( - CREATE_SEARCH_VARS; - iPvtImpl->iSearcher->SearchL( *iPvtImpl, *searchString, *defaultSearchField ); - DELETE_SEARCH_VARS; - ); //QT_TRAP_THROWING - } - -QCPixDocument* QCPixSearcher::getDocument( int aIndex ) - { - PERF_GETDOC_RESTART_TIMER - QCPixDocument* tmp = 0; - QT_TRAP_THROWING( tmp = QCPixDocFromCPixDoc( iPvtImpl->iSearcher->GetDocumentL( aIndex ) ) ); - PERF_GETDOC_ENDLOG - return tmp; - } - -void QCPixSearcher::getDocumentAsync( int aIndex ) - { - PERF_TIME_NOW("Async get document start") - QT_TRAP_THROWING( iPvtImpl->iSearcher->GetDocumentL( aIndex, *iPvtImpl ) ); - } - -void QCPixSearcher::cancelSearch() - { - iPvtImpl->iSearcher->Cancel(); - } diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/orbitsearch/orbitsearch.pro --- a/qcpix/tsrc/orbitsearch/orbitsearch.pro Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/orbitsearch/orbitsearch.pro Mon Jul 26 12:27:31 2010 +0530 @@ -21,7 +21,7 @@ QT += gui QT += sql CONFIG += qtestlib -LIBS += -lqcpixsearchclient -lxqservice +LIBS += -lcpixsearch -lxqservice HEADERS += uicontrols.h searchhelper.h testsearch.h testci.h SOURCES += OrbitSearch_reg.rss \ diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/orbitsearch/searchhelper.cpp --- a/qcpix/tsrc/orbitsearch/searchhelper.cpp Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/orbitsearch/searchhelper.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -16,12 +16,12 @@ */ #include "searchhelper.h" -#include +#include SearchHelper::SearchHelper(HbLineEdit* searchBx, HbPushButton* searchBtn, HbTextEdit* searchRslt) :searchBox( searchBx ), searchButton( searchBtn ), resultsBox( searchRslt ) { - searcher = QCPixSearcher::newInstance("root","_aggregate"); + searcher = CpixSearcher::newInstance("root","_aggregate"); resultsBox->setReadOnly( true ); resultsBox->setPlainText("Initialized"); searchTime.start(); @@ -37,16 +37,17 @@ resultsBox->setPlainText("Search button clicked!"); int hits = 0; - QString resultString(""); resultsBox->setPlainText( resultString ); searchTime.restart(); QString searchString; + +#if PREFIX_SEARCH searchString = "$prefix(\""; searchString += searchBox->text(); searchString += "\")"; -#if STAR_SEARCH +#elif STAR_SEARCH searchString += searchBox->text(); searchString += "*"; #elif NO_STAR_SEARCH @@ -63,10 +64,10 @@ #if !DONT_SHOW_RESULTS if( hits > 0 ) { - QCPixDocument* temp = NULL; + CpixDocument* temp = NULL; int docCount = 0; do{ - temp = searcher->getDocument( docCount++ ); + temp = searcher->document( docCount++ ); resultString += temp->baseAppClass() + " " + temp->docId() + " " + temp->excerpt() + "\r\n\r\n"; delete temp; }while( hits > docCount ); diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/orbitsearch/searchhelper.h --- a/qcpix/tsrc/orbitsearch/searchhelper.h Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/orbitsearch/searchhelper.h Mon Jul 26 12:27:31 2010 +0530 @@ -20,7 +20,7 @@ #include #include "uicontrols.h" -#include +#include #include class SearchHelper: public QObject @@ -35,7 +35,7 @@ private: ORBIT_SEARCH_CONTROLS //Not owned. - QCPixSearcher* searcher;//Owned + CpixSearcher* searcher;//Owned QTime searchTime; }; diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/qtcpixunittests/inc/ut_qtcpixdocument.h --- a/qcpix/tsrc/qtcpixunittests/inc/ut_qtcpixdocument.h Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/qtcpixunittests/inc/ut_qtcpixdocument.h Mon Jul 26 12:27:31 2010 +0530 @@ -20,8 +20,8 @@ #include -class QCPixDocument; -class QCPixDocumentTester: public QObject +class CpixDocument; +class CpixDocumentTester: public QObject { Q_OBJECT private slots: @@ -40,7 +40,7 @@ void cleanup(); private: - QCPixDocument* iDoc; + CpixDocument* iDoc; }; #endif /* UT_QTCPIXDOCUMENT_H_ */ diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/qtcpixunittests/inc/ut_qtcpixdocumentfield.h --- a/qcpix/tsrc/qtcpixunittests/inc/ut_qtcpixdocumentfield.h Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/qtcpixunittests/inc/ut_qtcpixdocumentfield.h Mon Jul 26 12:27:31 2010 +0530 @@ -20,8 +20,8 @@ #include -class QCPixDocumentField; -class QCPixDocumentFieldTester: public QObject +class CpixDocumentField; +class CpixDocumentFieldTester: public QObject { Q_OBJECT private slots: @@ -38,7 +38,7 @@ void cleanup(); private: - QCPixDocumentField* iField; + CpixDocumentField* iField; }; diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/qtcpixunittests/inc/ut_qtcpixsearcher.h --- a/qcpix/tsrc/qtcpixunittests/inc/ut_qtcpixsearcher.h Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/qtcpixunittests/inc/ut_qtcpixsearcher.h Mon Jul 26 12:27:31 2010 +0530 @@ -20,16 +20,16 @@ #include -class QCPixSearcher; -class QCPixDocument; +class CpixSearcher; +class CpixDocument; -class TestQCPixSearcher: public QObject +class TestCpixSearcher: public QObject { Q_OBJECT public slots: void HandleDatabaseSet(int aError); void HandleSearchResults(int aError, int aEstimatedCount); - void HandleDocument(int aError, QCPixDocument* aDoc); + void HandleDocument(int aError, CpixDocument* aDoc); private slots: void testNewInstance(); @@ -51,8 +51,8 @@ void cleanup(); private: - QCPixSearcher* iSearcher; - QCPixDocument* iDoc; + CpixSearcher* iSearcher; + CpixDocument* iDoc; bool iHandleSetDatabaseComplete; int iHandleSearchResultsComplete; bool iHandleGetDocumentComplete; diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/qtcpixunittests/qtcpixunittests.pro --- a/qcpix/tsrc/qtcpixunittests/qtcpixunittests.pro Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/qtcpixunittests/qtcpixunittests.pro Mon Jul 26 12:27:31 2010 +0530 @@ -33,6 +33,8 @@ ../qttestutil/SimpleChecker.cpp \ qtcpixunittests_reg.rss +LIBS += -lcpixsearch + symbian{ BLD_INF_RULES.prj_exports += "data/_0.cfs \epoc32\winscw\c\private\2001f6f7\indexing\indexdb\root\contact\_0\_0.cfs" \ "data/deletable \epoc32\winscw\c\private\2001f6f7\indexing\indexdb\root\contact\_0\deletable" \ @@ -44,5 +46,4 @@ TARGET.CAPABILITY = ALL -TCB -DRM TARGET.UID3 = 0xE76C2AE7 - LIBS += -lqcpixsearchclient } diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/qtcpixunittests/src/ut_qtcpixdocument.cpp --- a/qcpix/tsrc/qtcpixunittests/src/ut_qtcpixdocument.cpp Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/qtcpixunittests/src/ut_qtcpixdocument.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -19,83 +19,83 @@ #include #include -#include -#include +#include +#include #include #include "../../QtTestUtil/QtTestUtil.h" -void QCPixDocumentTester::testNewInstance() +void CpixDocumentTester::testNewInstance() { - QCPixDocument* doc = QCPixDocument::newInstance(); + CpixDocument* doc = CpixDocument::newInstance(); QVERIFY( doc != NULL ); delete doc; } -void QCPixDocumentTester::testGetSetName_data() +void CpixDocumentTester::testGetSetName_data() { QTest::addColumn( "baseAppClass" ); QTest::newRow("root") << "root"; QTest::newRow("root contact") << "root contact"; } -void QCPixDocumentTester::testGetSetName() +void CpixDocumentTester::testGetSetName() { QFETCH( QString, baseAppClass ); iDoc->setBaseAppClass( baseAppClass ); QVERIFY( iDoc->baseAppClass() == baseAppClass ); } -void QCPixDocumentTester::testGetSetDocId_data() +void CpixDocumentTester::testGetSetDocId_data() { QTest::addColumn( "docId" ); QTest::newRow("C:\\some\\doc\\id") << "C:\\some\\doc\\id"; } -void QCPixDocumentTester::testGetSetDocId() +void CpixDocumentTester::testGetSetDocId() { QFETCH( QString, docId ); iDoc->setDocId( docId ); QVERIFY( iDoc->docId() == docId ); } -void QCPixDocumentTester::testGetSetExcerpt_data() +void CpixDocumentTester::testGetSetExcerpt_data() { QTest::addColumn< QString >( "excerpt" ); QTest::newRow("this is a sample excerpt") << "this is a sample excerpt"; } -void QCPixDocumentTester::testGetSetExcerpt() +void CpixDocumentTester::testGetSetExcerpt() { QFETCH( QString, excerpt ); iDoc->setExcerpt( excerpt ); QVERIFY( iDoc->excerpt() == excerpt ); } -void QCPixDocumentTester::testGetFieldCount() +void CpixDocumentTester::testGetFieldCount() { iDoc->addField("testName", "testValue", 10); iDoc->addField("testName2", "testValue2", 12); QVERIFY( iDoc->fieldCount() == 2 ); } -void QCPixDocumentTester::testAddGetField() +void CpixDocumentTester::testAddGetField() { iDoc->addField("testName", "testValue", 10); iDoc->addField("testName2", "testValue2", 12); - const QCPixDocumentField& field1 = iDoc->field( 0 ); + const CpixDocumentField& field1 = iDoc->field( 0 ); QVERIFY( field1.name() == "testName" && field1.value() == "testValue" && field1.config() == 10 ); - const QCPixDocumentField& field2 = iDoc->field( 1 ); + const CpixDocumentField& field2 = iDoc->field( 1 ); QVERIFY( field2.name() == "testName2" && field2.value() == "testValue2" && field2.config() == 12 ); } -void QCPixDocumentTester::init() +void CpixDocumentTester::init() { - iDoc = QCPixDocument::newInstance(); + iDoc = CpixDocument::newInstance(); } -void QCPixDocumentTester::cleanup() +void CpixDocumentTester::cleanup() { delete iDoc; } -QTTESTUTIL_REGISTER_TEST( QCPixDocumentTester ); +QTTESTUTIL_REGISTER_TEST( CpixDocumentTester ); diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/qtcpixunittests/src/ut_qtcpixdocumentfield.cpp --- a/qcpix/tsrc/qtcpixunittests/src/ut_qtcpixdocumentfield.cpp Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/qtcpixunittests/src/ut_qtcpixdocumentfield.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -18,15 +18,15 @@ #include "ut_qtcpixdocumentfield.h" #include "../../QtTestUtil/QtTestUtil.h" -#include +#include -void QCPixDocumentFieldTester::testNewInstance() +void CpixDocumentFieldTester::testNewInstance() { - QCPixDocumentField* field = QCPixDocumentField::newInstance( QString(), QString(), 0 ); + CpixDocumentField* field = CpixDocumentField::newInstance( QString(), QString(), 0 ); QVERIFY( field != NULL ); } -void QCPixDocumentFieldTester::testGetSetName_data() +void CpixDocumentFieldTester::testGetSetName_data() { QTest::addColumn< QString >( "name" ); @@ -34,14 +34,14 @@ QTest::newRow("testName2") << "testName2" ; } -void QCPixDocumentFieldTester::testGetSetName() +void CpixDocumentFieldTester::testGetSetName() { QFETCH( QString, name ); iField->setName( name ); QVERIFY( iField->name() == name ); } -void QCPixDocumentFieldTester::testGetSetValue_data() +void CpixDocumentFieldTester::testGetSetValue_data() { QTest::addColumn< QString >( "value" ); @@ -49,14 +49,14 @@ QTest::newRow("testVlaue2") << "testValue2" ; } -void QCPixDocumentFieldTester::testGetSetValue() +void CpixDocumentFieldTester::testGetSetValue() { QFETCH( QString, value ); iField->setValue( value ); QVERIFY( iField->value() == value ); } -void QCPixDocumentFieldTester::testGetSetConfig_data() +void CpixDocumentFieldTester::testGetSetConfig_data() { QTest::addColumn< int >( "config" ); @@ -64,22 +64,22 @@ QTest::newRow("20") << 20 ; } -void QCPixDocumentFieldTester::testGetSetConfig() +void CpixDocumentFieldTester::testGetSetConfig() { QFETCH( int, config ); iField->setConfig( config ); QVERIFY( iField->config() == config ); } -void QCPixDocumentFieldTester::init() +void CpixDocumentFieldTester::init() { - iField = QCPixDocumentField::newInstance( "testName", "testValue", 100 ); + iField = CpixDocumentField::newInstance( "testName", "testValue", 100 ); QVERIFY( iField!=NULL && iField->name()=="testName" && iField->value()=="testValue" && iField->config()==100 ); } -void QCPixDocumentFieldTester::cleanup() +void CpixDocumentFieldTester::cleanup() { delete iField; } -QTTESTUTIL_REGISTER_TEST( QCPixDocumentFieldTester ); +QTTESTUTIL_REGISTER_TEST( CpixDocumentFieldTester ); diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/qtcpixunittests/src/ut_qtcpixsearcher.cpp --- a/qcpix/tsrc/qtcpixunittests/src/ut_qtcpixsearcher.cpp Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/qtcpixunittests/src/ut_qtcpixsearcher.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -19,8 +19,8 @@ #include #include -#include -#include +#include +#include #include #include "../../QtTestUtil/QtTestUtil.h" @@ -46,50 +46,51 @@ #define TEST_GET_DATA_FETCH \ QFETCH(QString, baseAppClass); -void TestQCPixSearcher::testNewInstance() +void TestCpixSearcher::testNewInstance() { - QCPixSearcher* searcher = QCPixSearcher::newInstance(); + CpixSearcher* searcher = CpixSearcher::newInstance(); QVERIFY( searcher != NULL ); delete searcher; } -void TestQCPixSearcher::init() +void TestCpixSearcher::init() { - iSearcher = QCPixSearcher::newInstance("root", "_aggregate");//default to root searcher. + iSearcher = CpixSearcher::newInstance("root", "_aggregate");//default to root searcher. QVERIFY( iSearcher!=NULL ); } -void TestQCPixSearcher::cleanup() +void TestCpixSearcher::cleanup() { delete iSearcher; } -void TestQCPixSearcher::testSetDatabase_data() +void TestCpixSearcher::testSetDatabase_data() { TEST_GET_DATA; } -void TestQCPixSearcher::testSetDatabase() +void TestCpixSearcher::testSetDatabase() { TEST_GET_DATA_FETCH; + Q_ASSERT( iSearcher ); iSearcher->setDatabase( baseAppClass );//no way to verify this :( } -void TestQCPixSearcher::HandleDatabaseSet(int aError) +void TestCpixSearcher::HandleDatabaseSet(int aError) { iHandleSetDatabaseComplete = true; iError = aError; } -void TestQCPixSearcher::testSetDatabaseAsync_data() +void TestCpixSearcher::testSetDatabaseAsync_data() { TEST_GET_DATA; } -void TestQCPixSearcher::testSetDatabaseAsync() +void TestCpixSearcher::testSetDatabaseAsync() { TEST_GET_DATA_FETCH; - + Q_ASSERT( iSearcher ); iHandleSetDatabaseComplete = false; iError = -2 /*General: Something non-specific*/; connect( iSearcher, SIGNAL(handleDatabaseSet(int)), this, SLOT(HandleDatabaseSet(int)) ); @@ -98,32 +99,33 @@ QVERIFY( iError == 0/*No error*/ ); } -void TestQCPixSearcher::testSearch_data() +void TestCpixSearcher::testSearch_data() { TEST_SEARCH_DATA; } -void TestQCPixSearcher::testSearch() +void TestCpixSearcher::testSearch() { TEST_SEARCH_DATA_FETCH; + Q_ASSERT( iSearcher ); QVERIFY( iSearcher->search( searchString ) == estimatedResultCount ); } -void TestQCPixSearcher::HandleSearchResults(int aError, int aEstimatedCount) +void TestCpixSearcher::HandleSearchResults(int aError, int aEstimatedCount) { if( aError == 0/*None*/ ) iHandleSearchResultsComplete = aEstimatedCount; else iHandleSearchResultsComplete = 0; } -void TestQCPixSearcher::testSearchAsync_data() +void TestCpixSearcher::testSearchAsync_data() { TEST_SEARCH_DATA; } -void TestQCPixSearcher::testSearchAsync() +void TestCpixSearcher::testSearchAsync() { TEST_SEARCH_DATA_FETCH; - + Q_ASSERT( iSearcher ); iHandleSearchResultsComplete = -1; //Do Search @@ -136,39 +138,41 @@ QVERIFY( iHandleSearchResultsComplete == estimatedResultCount ); } -void TestQCPixSearcher::testGetDocument_data() +void TestCpixSearcher::testGetDocument_data() { TEST_SEARCH_DATA; } -void TestQCPixSearcher::testGetDocument() +void TestCpixSearcher::testGetDocument() { TEST_SEARCH_DATA_FETCH; + Q_ASSERT( iSearcher ); QVERIFY( iSearcher->search( searchString ) == estimatedResultCount ); //Check only baseAppClass for now. Not sure about the order of docs returned. //Hence check that we are getting "Robert" from contacts. if( estimatedResultCount>0 ){ - QCPixDocument* doc = iSearcher->getDocument( 0 ); + CpixDocument* doc = iSearcher->document( 0 ); QVERIFY( doc->baseAppClass() == "root contact" ); } else return; } -void TestQCPixSearcher::HandleDocument(int /*aError*/, QCPixDocument* aDoc) +void TestCpixSearcher::HandleDocument(int /*aError*/, CpixDocument* aDoc) { iHandleGetDocumentComplete = true; iDoc = aDoc; } -void TestQCPixSearcher::testGetDocumentAsync_data() +void TestCpixSearcher::testGetDocumentAsync_data() { TEST_SEARCH_DATA; } -void TestQCPixSearcher::testGetDocumentAsync() +void TestCpixSearcher::testGetDocumentAsync() { TEST_SEARCH_DATA_FETCH; + Q_ASSERT( iSearcher ); iHandleGetDocumentComplete = false; iHandleSearchResultsComplete = -1; @@ -179,9 +183,9 @@ QVERIFY( iHandleSearchResultsComplete == estimatedResultCount ); //Get Document - connect( iSearcher, SIGNAL(handleDocument(int,QCPixDocument*)), this, SLOT(HandleDocument(int,QCPixDocument*)) ); + connect( iSearcher, SIGNAL(handleDocument(int,CpixDocument*)), this, SLOT(HandleDocument(int,CpixDocument*)) ); if( iHandleSearchResultsComplete>0 ) - iSearcher->getDocumentAsync( 0 ); + iSearcher->documentAsync( 0 ); else return; @@ -190,4 +194,4 @@ QVERIFY( iDoc->baseAppClass() == "root contact" ); } -QTTESTUTIL_REGISTER_TEST( TestQCPixSearcher ); +QTTESTUTIL_REGISTER_TEST( TestCpixSearcher ); diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/samplesearch/samplesearch.cpp --- a/qcpix/tsrc/samplesearch/samplesearch.cpp Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/samplesearch/samplesearch.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -17,7 +17,7 @@ #include "SampleSearch.h" #include "searchhandler.h" -#include +#include #include SampleSearch::SampleSearch(QWidget */*parent*/) @@ -98,7 +98,7 @@ connect(btnSearchAsync, SIGNAL(clicked()),this, SLOT(doSearchAsync())); connect(iSearchHandler, SIGNAL(handleSearchResult(int,int)),this, SLOT(onSearchComplete(int,int))); connect(iSearchHandler, SIGNAL(handleAsyncSearchResult(int,int)),this, SLOT(onAsyncSearchComplete(int,int))); - connect(iSearchHandler, SIGNAL(handleDocument(int,QCPixDocument*)),this, SLOT(onGetDocumentComplete(int,QCPixDocument*))); + connect(iSearchHandler, SIGNAL(handleDocument(int,CpixDocument*)),this, SLOT(onGetDocumentComplete(int,CpixDocument*))); } SampleSearch::~SampleSearch() @@ -142,7 +142,7 @@ iSearchHandler->getDocumentAsyncAtIndex( nextDocumentIndex++ ); } -void SampleSearch::onGetDocumentComplete(int aError, QCPixDocument* aDoc) +void SampleSearch::onGetDocumentComplete(int aError, CpixDocument* aDoc) { if( aDoc == NULL ) return; addDocumentToResultsPage( aDoc, currentRow++ ); @@ -293,7 +293,7 @@ { if(rowCountgetDocumentAtIndex(i); + CpixDocument* aSearchDoc = iSearchHandler->getDocumentAtIndex(i); addDocumentToResultsPage( aSearchDoc, rowCount ); rowCount++; } @@ -312,7 +312,7 @@ QString docId; }; -void SampleSearch::addDocumentToResultsPage( QCPixDocument* aSearchDoc, int rowCount ) +void SampleSearch::addDocumentToResultsPage( CpixDocument* aSearchDoc, int rowCount ) { QTableWidgetItem *appClassCol = new QTableWidgetItem("Col1"); appClassCol->setFlags(Qt::ItemIsEnabled); diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/samplesearch/samplesearch.h --- a/qcpix/tsrc/samplesearch/samplesearch.h Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/samplesearch/samplesearch.h Mon Jul 26 12:27:31 2010 +0530 @@ -32,7 +32,7 @@ #include class CSearchHandler; -class QCPixDocument; +class CpixDocument; class DocLaunchInfo; class SampleSearch : public QWidget @@ -75,7 +75,7 @@ void createSearchResultTableAndAddContents(); void searchCompleteHelper(int aError, int aResultCount); void setSearchResultsHeader(); - void addDocumentToResultsPage( QCPixDocument* aSearchDoc, int rowCount ); + void addDocumentToResultsPage( CpixDocument* aSearchDoc, int rowCount ); void openMessaging( int aMessagingId ); void doLaunchDoc(DocLaunchInfo& info); @@ -85,7 +85,7 @@ void doSearchAsync(); void onSearchComplete(int aError, int aResultCount); void onAsyncSearchComplete(int aError, int aResultCount); - void onGetDocumentComplete(int aError, QCPixDocument* aDoc); + void onGetDocumentComplete(int aError, CpixDocument* aDoc); void displayNextPage(); void displayPrevPage(); }; diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/samplesearch/samplesearch.pro --- a/qcpix/tsrc/samplesearch/samplesearch.pro Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/samplesearch/samplesearch.pro Mon Jul 26 12:27:31 2010 +0530 @@ -20,7 +20,7 @@ QT += core QT += gui CONFIG += qtestlib -LIBS += -lqcpixsearchclient +LIBS += -lcpixsearch HEADERS += SampleSearch.h \ searchHandler.h diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/samplesearch/searchhandler.cpp --- a/qcpix/tsrc/samplesearch/searchhandler.cpp Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/samplesearch/searchhandler.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -16,14 +16,14 @@ */ #include "searchhandler.h" -#include -#include +#include +#include CSearchHandler::CSearchHandler() { - iSearchInterface = QCPixSearcher::newInstance("root","_aggregate"); + iSearchInterface = CpixSearcher::newInstance("root","_aggregate"); iSearchInterface->connect(iSearchInterface, SIGNAL(handleSearchResults(int,int)), this, SLOT(__handleSearchResult(int,int))); - iSearchInterface->connect(iSearchInterface, SIGNAL(handleDocument(int,QCPixDocument*)), this, SLOT(__getDocumentAsync(int,QCPixDocument*))); + iSearchInterface->connect(iSearchInterface, SIGNAL(handleDocument(int,CpixDocument*)), this, SLOT(__getDocumentAsync(int,CpixDocument*))); } void CSearchHandler::__handleSearchResult(int aError, int estimatedResultCount) @@ -33,14 +33,14 @@ emit handleAsyncSearchResult(aError, estimatedResultCount); } -void CSearchHandler::__getDocumentAsync(int aError, QCPixDocument* aDocument ) +void CSearchHandler::__getDocumentAsync(int aError, CpixDocument* aDocument ) { emit handleDocument( aError, aDocument ); } -QCPixDocument* CSearchHandler::getDocumentAtIndex(int aIndex) +CpixDocument* CSearchHandler::getDocumentAtIndex(int aIndex) { - return iSearchInterface->getDocument( aIndex ); + return iSearchInterface->document( aIndex ); } void CSearchHandler::search(QString aSearchString) @@ -63,7 +63,7 @@ void CSearchHandler::getDocumentAsyncAtIndex( int aIndex ) { - iSearchInterface->getDocumentAsync( aIndex ); + iSearchInterface->documentAsync( aIndex ); } void CSearchHandler::searchAsync(QString aSearchString) diff -r 7c6f43cd91cf -r fcb2a58c181b qcpix/tsrc/samplesearch/searchhandler.h --- a/qcpix/tsrc/samplesearch/searchhandler.h Mon Jul 12 00:18:57 2010 +0530 +++ b/qcpix/tsrc/samplesearch/searchhandler.h Mon Jul 26 12:27:31 2010 +0530 @@ -20,8 +20,8 @@ #include #include -class QCPixSearcher; -class QCPixDocument; +class CpixSearcher; +class CpixDocument; class CSearchHandler: public QObject { @@ -32,15 +32,15 @@ signals: void handleSearchResult(int, int); void handleAsyncSearchResult(int, int); - void handleDocument(int aError, QCPixDocument* aDoc); + void handleDocument(int aError, CpixDocument* aDoc); private slots: void __handleSearchResult(int aError, int estimatedResultCount); - void __getDocumentAsync(int aError, QCPixDocument* aDocument ); + void __getDocumentAsync(int aError, CpixDocument* aDocument ); public: ~CSearchHandler(); - QCPixDocument* getDocumentAtIndex(int aIndex); + CpixDocument* getDocumentAtIndex(int aIndex); void getDocumentAsyncAtIndex(int aIndex); void search(QString aSearchString); void searchAsync(QString aSearchString); @@ -48,7 +48,7 @@ int getSearchResultCount(); private: - QCPixSearcher *iSearchInterface; + CpixSearcher *iSearchInterface; QList searchResults; int iSearchresultCount; }; diff -r 7c6f43cd91cf -r fcb2a58c181b rom/cpix_mw.iby --- a/rom/cpix_mw.iby Mon Jul 12 00:18:57 2010 +0530 +++ b/rom/cpix_mw.iby Mon Jul 26 12:27:31 2010 +0530 @@ -44,7 +44,7 @@ //data=DATAZ_\RESOURCE_FILES_DIR\plugins\npCPixPlugin.rsc RESOURCE_FILES_DIR\plugins\npCPixPlugin.rsc //CPIX QT -file=ABI_DIR\BUILD_DIR\qcpixsearchclient.dll SHARED_LIB_DIR\qcpixsearchclient.dll +file=ABI_DIR\BUILD_DIR\cpixsearch.dll SHARED_LIB_DIR\cpixsearch.dll //CPiX Watchdog file=ABI_DIR\BUILD_DIR\cpixwatchdog.exe SHARED_LIB_DIR\cpixwatchdog.exe diff -r 7c6f43cd91cf -r fcb2a58c181b searchengine/cpix/cpix/src/fileparser/fileparser.cpp --- a/searchengine/cpix/cpix/src/fileparser/fileparser.cpp Mon Jul 12 00:18:57 2010 +0530 +++ b/searchengine/cpix/cpix/src/fileparser/fileparser.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -180,7 +180,7 @@ newField.reset(new Field(LEXTENSION_FIELD, wExtension.c_str(), - cpix_STORE_NO + cpix_STORE_YES | cpix_INDEX_TOKENIZED | cpix_AGGREGATE_YES | cpix_FREE_TEXT)); diff -r 7c6f43cd91cf -r fcb2a58c181b searchengine/cpix/tsrc/cpixsample/group/cpixsample.mmp --- a/searchengine/cpix/tsrc/cpixsample/group/cpixsample.mmp Mon Jul 12 00:18:57 2010 +0530 +++ b/searchengine/cpix/tsrc/cpixsample/group/cpixsample.mmp Mon Jul 26 12:27:31 2010 +0530 @@ -50,11 +50,9 @@ STATICLIBRARY libcpix.lib STATICLIBRARY libclucene.lib STATICLIBRARY libstemmer.lib -//STATICLIBRARY libitk.lib STATICLIBRARY libcpixtools.lib -//STATICLIBRARY libcpixxf.lib -//STATICLIBRARY libexif.lib -//STATICLIBRARY libid3.lib +STATICLIBRARY libanalysis.lib + LIBRARY libpthread.lib LIBRARY libz.lib // for libid3 diff -r 7c6f43cd91cf -r fcb2a58c181b searcher/searchserver/src/csearchserver.cpp --- a/searcher/searchserver/src/csearchserver.cpp Mon Jul 12 00:18:57 2010 +0530 +++ b/searcher/searchserver/src/csearchserver.cpp Mon Jul 26 12:27:31 2010 +0530 @@ -104,7 +104,7 @@ // CSearchServer* CSearchServer::NewLC() { - CSearchServer* searchServer = new ( ELeave ) CSearchServer( EPriorityNormal ); + CSearchServer* searchServer = new ( ELeave ) CSearchServer( CActive::EPriorityStandard ); CleanupStack::PushL(searchServer); searchServer->ConstructL(); return searchServer; @@ -120,7 +120,9 @@ OstTraceFunctionEntry0( CSEARCHSERVER_CONSTRUCTL_ENTRY ); CPIXLOGSTRING("Creating search server"); - + RProcess process; + process.SetPriority( EPriorityBackground ); + process.Close(); // Create new container index iContainerIndex = CObjectConIx::NewL(); diff -r 7c6f43cd91cf -r fcb2a58c181b searchsrv_plat/cpix_search_api/group/bld.inf --- a/searchsrv_plat/cpix_search_api/group/bld.inf Mon Jul 12 00:18:57 2010 +0530 +++ b/searchsrv_plat/cpix_search_api/group/bld.inf Mon Jul 26 12:27:31 2010 +0530 @@ -22,7 +22,7 @@ PRJ_EXPORTS -../inc/qcpixcommon.h MW_LAYER_PLATFORM_EXPORT_PATH(qcpixcommon.h) -../inc/qcpixdocument.h MW_LAYER_PLATFORM_EXPORT_PATH(qcpixdocument.h) -../inc/qcpixdocumentfield.h MW_LAYER_PLATFORM_EXPORT_PATH(qcpixdocumentfield.h) -../inc/qcpixsearcher.h MW_LAYER_PLATFORM_EXPORT_PATH(qcpixsearcher.h) +../inc/cpixcommon.h MW_LAYER_PLATFORM_EXPORT_PATH(cpixcommon.h) +../inc/cpixdocument.h MW_LAYER_PLATFORM_EXPORT_PATH(cpixdocument.h) +../inc/cpixdocumentfield.h MW_LAYER_PLATFORM_EXPORT_PATH(cpixdocumentfield.h) +../inc/cpixsearcher.h MW_LAYER_PLATFORM_EXPORT_PATH(cpixsearcher.h) diff -r 7c6f43cd91cf -r fcb2a58c181b searchsrv_plat/cpix_search_api/inc/cpixcommon.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/searchsrv_plat/cpix_search_api/inc/cpixcommon.h Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,32 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Qt common search APIs +* +*/ + + +#ifndef CPIXCOMMON_H_ +#define CPIXCOMMON_H_ + +#ifndef THROWS_EXCEPTION +#define THROWS_EXCEPTION +#endif + +/** + * Maximum string length. + * */ +//@TODO:sai: Is this a sane value? +const int KMaxStringLength = 256; + +#endif /* CPIXCOMMON_H_ */ diff -r 7c6f43cd91cf -r fcb2a58c181b searchsrv_plat/cpix_search_api/inc/cpixdocument.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/searchsrv_plat/cpix_search_api/inc/cpixdocument.h Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,174 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Qt search document APIs +* +*/ + +#ifndef _CPIXDOCUMENT_H +#define _CPIXDOCUMENT_H + +#ifdef BUILD_DLL +#define DLL_EXPORT Q_DECL_EXPORT +#else +#define DLL_EXPORT Q_DECL_IMPORT +#endif + +/** + * @file + * @ingroup Qt Search ClientAPI + * @brief Contains CpixDocument APIs + */ + +#include +#include + +//Forward Declaration +class CpixDocumentPrivate; +class CpixDocumentField; + +/** + * @brief Represents the document returned as a result of a search query. + * @ingroup ClientAPI + * + * Link against: cpixsearch.lib + */ +class DLL_EXPORT CpixDocument: public QObject + { + Q_OBJECT +public: + //@TODO: The following enums are copied over from S60. They need to + // be moved to a common file so that they can be shared by s60, qt and openc. + /** + * TStored defines wheter the value is stored to database. + * If value is stored to database, it can be retrieved from search result. + */ + enum Stored + { + StoreYes = 1, + StoreNo = 2 + }; + + /** + * TIndexed defines how the value of the field is indexed. + * If value is indexed, it can be searched. + */ + enum Indexed + { + IndexNo = 16, + IndexTokenized = 32, + IndexUnTokenized = 64 + }; + + /** + * TAggregated defines how the value of the field are exposed + * for aggregation. Aggregated field can be found with generic searches. + * If aggregation is not specified, all indexed field are aggeregated by + * default. Note: that also non-indexed fields can be aggregated. + */ + enum Aggregated + { + AggregateNo = 1<<30, + AggregateYes = 1<<31, + AggregateDefault = 0 + }; + /** + * By default, field value is stored to database and it's indexed as tokenized strings. + */ + static const int DefaultConfig = StoreYes | IndexTokenized | AggregateDefault; + + static const float KDefaultBoost; + +public: + /** + * Constructor. + * Creates a CpixDocument object and return a pointer to the created object. + * @return A pointer to the created instance of CpixDocument. + */ + static CpixDocument* newInstance(); + + /** + * Destructor + */ + virtual ~CpixDocument(); + + /** + * Getter: Gets the document identifier. + * @return document identifier. + */ + QString docId() const; + + /** + * Getter: Gets the document excert. + * @return document excerpt. + */ + QString excerpt() const; + + /** + * Getter: Gets the document's base app class. + * @return document's base app class. + */ + QString baseAppClass() const; + + /** + * Getter: Gets the field at aIndex in the document. + * @param aIndex index of the field that is to be retrieved. + * @return CpixDocumentField that was at aIndex. + */ + const CpixDocumentField& field( const int aIndex ) const THROWS_EXCEPTION; + + /** + * Getter: Gets the field count. + * @return The number of the fields in the document. + */ + int fieldCount() const; + + /** + * Setter: Sets the document identifier for the document. + * @param aDocId the document identifier to be set. + */ + void setDocId(const QString aDocId); + + /** + * Setter: Sets the excerpt for the document. + * @param aExcerpt the excerpt to be set. + */ + void setExcerpt(const QString aExcerpt); + + /** + * Setter: Sets the base app class for the document. + * @param aBaseAppClass the base app class to be set. + */ + void setBaseAppClass(const QString aBaseAppClass); + + /** + * Setter: Adds a field with aName, aValue and aConfig to the document. + * @param aName The name of the field + * @param aValue The value of the field + * @param aConfig The config of the field + * @return the CpixDocumentField that was added to the document. + */ + void addField(const QString aName, const QString aValue, const int aConfig = CpixDocument::DefaultConfig); + +private: + /** + * Default constructor + */ + CpixDocument(); + +private: + CpixDocumentPrivate* const iPvtImpl; + Q_DECLARE_PRIVATE_D( iPvtImpl, CpixDocument ) + }; + +#endif //_CPIXDOCUMENT_H diff -r 7c6f43cd91cf -r fcb2a58c181b searchsrv_plat/cpix_search_api/inc/cpixdocumentfield.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/searchsrv_plat/cpix_search_api/inc/cpixdocumentfield.h Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,118 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Qt search document field APIs +* +*/ + +#ifndef _CPIXDOCUMENTFIELD_H +#define _CPIXDOCUMENTFIELD_H + +#ifdef BUILD_DLL +#define DLL_EXPORT Q_DECL_EXPORT +#else +#define DLL_EXPORT Q_DECL_IMPORT +#endif + +/** + * @file + * @ingroup Qt Search ClientAPI + * @brief Contains CCPixDocument field APIs + */ + +#include + +//Forward decelaration +class CpixDocumentFieldPrivate; + +/** + * @brief Represents the fields of documents returned as a result of a search query. + * @ingroup ClientAPI + * + * Link against: cpixsearch.lib + */ +class DLL_EXPORT CpixDocumentField: public QObject + { + Q_OBJECT +public: + /** + * Constructor. + * Creates a CpixDocumentField object and return a pointer to the created object. + * @param aName Name of the field + * @param aValue Value of the field + * @param aConfig Config for the field + * @return A pointer to the created instance of CpixDocumentField. + * + * @note After using this constructor, the client has to mandatorily call + * SetDatabase() before invoking any search. + */ + static CpixDocumentField* newInstance( const QString aName, const QString aValue, const int aConfig ); + + /** + * Destructor. + */ + virtual ~CpixDocumentField(); + + /** + * Getter: Gets the name of the field. + * @return The name of the field + */ + QString name() const; + + /** + * Getter: Gets the Value of the field. + * @return The value of the field + */ + QString value() const; + + /** + * Getter: Gets the Config of the field. + * @return The config of the field + */ + int config() const; + + /** + * Setter: Sets the Name of the field. + * @param aName The name of the field + */ + void setName(const QString aName); + + /** + * Setter: Sets the Value of the field. + * @param aValue The value of the field + */ + void setValue(const QString aValue); + + /** + * Setter: Sets the Name of the field. + * @param aConfig The config of the field + */ + void setConfig(const int aConfig); + +private: + /** + * Constructor. + * Creates a CpixDocumentField object and return a pointer to the created object. + * @param aName Name of the field + * @param aValue Value of the field + * @param aConfig Config for the field + * @return A pointer to the created instance of CpixDocumentField. + */ + CpixDocumentField(const QString aName, const QString aValue, const int aConfig); + +private: + CpixDocumentFieldPrivate* const iPvtImpl; + Q_DECLARE_PRIVATE_D( iPvtImpl, CpixDocumentField ) + }; + +#endif //_CPIXDOCUMENTFIELD_H diff -r 7c6f43cd91cf -r fcb2a58c181b searchsrv_plat/cpix_search_api/inc/cpixsearcher.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/searchsrv_plat/cpix_search_api/inc/cpixsearcher.h Mon Jul 26 12:27:31 2010 +0530 @@ -0,0 +1,254 @@ +/* +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Qt search APIs +* +*/ + +#ifndef _CPIXSEARCHER_H +#define _CPIXSEARCHER_H + +//Uncomment the following line to enable performance measurements +//#define OST_TRACE_COMPILER_IN_USE + +#ifdef OST_TRACE_COMPILER_IN_USE + +#include +#include +#define PERF_SEARCH_START_TIMER searchTimer.start(); +#define PERF_SEARCH_RESTART_TIMER searchTimer.restart(); +#define PERF_SEARCH_ENDLOG qDebug() << "Search QT API took: " << searchTimer.elapsed() << "msec"; + +#define PERF_GETDOC_START_TIMER getDocumentTimer.start(); +#define PERF_GETDOC_RESTART_TIMER getDocumentTimer.restart(); +#define PERF_GETDOC_ENDLOG qDebug() << "Search QT API took: " << getDocumentTimer.elapsed() << "msec"; + +#define PERF_TIME_NOW(message) qDebug() << "Search QT API: " << QString(message) << ": " << QTime::currentTime().toString("hh:mm:ss.zzz"); + +#else + +#define PERF_SEARCH_START_TIMER +#define PERF_SEARCH_RESTART_TIMER +#define PERF_SEARCH_ENDLOG +#define PERF_GETDOC_START_TIMER +#define PERF_GETDOC_RESTART_TIMER +#define PERF_GETDOC_ENDLOG +#define PERF_TIME_NOW(message) + +#endif + +/** + * @file + * @ingroup Search Client API fpr Qt Clients + * @brief Contains CCPixSearcher used for searching + */ + +#ifdef BUILD_DLL +#define DLL_EXPORT Q_DECL_EXPORT +#else +#define DLL_EXPORT Q_DECL_IMPORT +#endif + +#include +#include + +//forward declarations +class CpixDocument; +class CpixSearcherPrivate; + +// CLASS DECLARATION +/** + * @brief Used for searching. + * @ingroup Qt Search Client API + * Link against: cpixsearch.lib + * + * An instance of CpixSearcher is used to commit search operations. + * + * Example code: + * + * Usecase 1: Sync calls. + * \code + * CpixSearcher* searcher = CpixSearcher::newInstance("root"); + * if(searcher){ + * int hitCount = searcher->search("search for me"); + * for(int i=0; iSetDatabase("root"); + * int hitCount = searcher->search("search for me"); + * for(int i=0; isearch("search for me"); + * GetDocumentAsync( iCurrentDocumentCount++ ); + * + * ClientClass::ClientHandleGetDocumentCompleteSlot(int aError, CpixDocument* aDocument){ + * if( KErrNone != aError ){ + * //do something with aDocument + * } + * documentAsync( iCurrentDocumentCount++ ); //Now get the next document. + * } + * + * \endcode + * + */ +class DLL_EXPORT CpixSearcher: public QObject + { + Q_OBJECT +public: + /** + * Constructor. + * Creates a CpixSearcher object and return a pointer to the created object. + * @return A pointer to the created instance of CCPixSearcher. + * + * @note After using this constructor, the client has to mandatorily call + * SetDatabase() before invoking any search. + */ + static CpixSearcher* newInstance(); + + /** + * Overloaded constructor + * Creates a CCPixSearcher object and return a pointer to the created object. + * If this constructor is used, the client can directly invoke Search without + * the need to call SetDatabase. + * @param aBaseAppClass The baseAppClass on which to invoke searches on. + * @param aDefaultSearchField Default field where the keywords are searched from. + * @return A pointer to the created instance of CCPixSearcher. + */ + static CpixSearcher* newInstance( QString aBaseAppClass, QString aDefaultSearchField=NULL ); + + /** + * Destructor. + */ + ~CpixSearcher(); + + /** + * Synchronously set (or change the database, if already set) on which to invoke subsequent searches. + * @param aBaseAppClass baseAppClass whose corresponding database is to be opened. + */ + void setDatabase(QString aBaseAppClass) THROWS_EXCEPTION; + + /** + * Asynchronously set (or change the database, if already set) on which to invoke subsequent searches. + * @param aBaseAppClass baseAppClass whose corresponding database is to be opened. + * + * @note Client is notified on completion of this call via HandleDatabaseSet signal. + */ + void setDatabaseAsync(QString aBaseAppClass) THROWS_EXCEPTION; + + /** + * Syncronously search for aSearchString. + * @param aSearchString keywords to be searched for. + * @param aDefaultSearchField Default field where the keywords are searched from. + * @return Estimated number of documents containing aSearchString. + */ + int search(QString aSearchString, QString aDefaultSearchField=NULL) THROWS_EXCEPTION; + + /** + * Asyncronously search for aSearchString. + * @param aSearchString keywords to be searched for. + * @param aDefaultSearchField Default field where the keywords are searched from. + * @return Estimated number of documents containing aSearchString. + * + * @note Client is notified on completion of this call via HandleSearchResults signal. + */ + void searchAsync(QString aSearchString, QString aDefaultSearchField=NULL) THROWS_EXCEPTION; + + /** + * Synchronously get the document with index aIndex. + * @param aIndex Index of document to be retrieved + * @return A pointer to CpixDocument that has been retrieved. Null on error. + * + * @note This should be called only after the synchronous search call has returned + * and aIndex should be between 0 and estimated count returned by Search(). + */ + CpixDocument* document(int aIndex) THROWS_EXCEPTION; + + /** + * Asynchronously get the document with index aIndex. + * @param aIndex Index of document to be retrieved + * @return A pointer to CpixDocument that has been retrieved. Null on error. + * + * @note This should be called only after the synchronous search call has returned + * and aIndex should be between 0 and estimated count returned by Search(). + */ + void documentAsync(int aIndex) THROWS_EXCEPTION; + + /** + * Cancels any outstanding searches. + */ + void cancelSearch(); + +signals: + /** + * Notify completion of SetDatabaseAsyc + * @param aError Completion (error) code of SetDatabaseAsync + */ + void handleDatabaseSet(int aError); + + /** + * Notify completion of SearchAsyc + * @param aError Completion (error) code of SearchAsyc + * @param aEstimatedResultCount Estimated number of documents found after SearchAsync + */ + void handleSearchResults(int aError, int aEstimatedResultCount); + + /** + * Notify completion of GetDatabaseAsyc + * @param aError Completion (error) code of GetDatabaseAsyc + * @param aDocument The requested document. + */ + void handleDocument(int aError, CpixDocument* aDocument); + +private: + /** + * Defaul constructor. + * Creates a CpixSearcher object and return a pointer to the created object. + * @return A pointer to the created instance of CCPixSearcher. + */ + CpixSearcher(); + + CpixSearcherPrivate* const iPvtImpl; + Q_DECLARE_PRIVATE_D( iPvtImpl, CpixSearcher ) + +#ifdef OST_TRACE_COMPILER_IN_USE + QTime searchTimer; + QTime getDocumentTimer; +#endif + }; + +#endif //_CPIXSEARCHER_H diff -r 7c6f43cd91cf -r fcb2a58c181b searchsrv_plat/cpix_search_api/inc/qcpixcommon.h --- a/searchsrv_plat/cpix_search_api/inc/qcpixcommon.h Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Qt common search APIs -* -*/ - - -#ifndef QCPIXCOMMON_H_ -#define QCPIXCOMMON_H_ - -#ifndef THROWS_EXCEPTION -#define THROWS_EXCEPTION -#endif - -/** - * Maximum string length. - * */ -//@TODO:sai: Is this a sane value? -const int KMaxStringLength = 256; - -#endif /* QCPIXCOMMON_H_ */ diff -r 7c6f43cd91cf -r fcb2a58c181b searchsrv_plat/cpix_search_api/inc/qcpixdocument.h --- a/searchsrv_plat/cpix_search_api/inc/qcpixdocument.h Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,173 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Qt search document APIs -* -*/ - -#ifndef _QCPIXDOCUMENT_H -#define _QCPIXDOCUMENT_H - -#ifdef BUILD_DLL -#define DLL_EXPORT Q_DECL_EXPORT -#else -#define DLL_EXPORT Q_DECL_IMPORT -#endif - -/** - * @file - * @ingroup Qt Search ClientAPI - * @brief Contains CCPixDocument APIs - */ - -#include - -//Forward Declaration -class QCPixDocumentPrivate; -class QCPixDocumentField; - -/** - * @brief Represents the document returned as a result of a search query. - * @ingroup ClientAPI - * - * Link against: QCPixSearchClient.lib - */ -class DLL_EXPORT QCPixDocument: public QObject - { - Q_OBJECT -public: - //@TODO: The following enums are copied over from S60. They need to - // be moved to a common file so that they can be shared by s60, qt and openc. - /** - * TStored defines wheter the value is stored to database. - * If value is stored to database, it can be retrieved from search result. - */ - enum TStored - { - EStoreYes = 1, - EStoreNo = 2 - }; - - /** - * TIndexed defines how the value of the field is indexed. - * If value is indexed, it can be searched. - */ - enum TIndexed - { - EIndexNo = 16, - EIndexTokenized = 32, - EIndexUnTokenized = 64 - }; - - /** - * TAggregated defines how the value of the field are exposed - * for aggregation. Aggregated field can be found with generic searches. - * If aggregation is not specified, all indexed field are aggeregated by - * default. Note: that also non-indexed fields can be aggregated. - */ - enum TAggregated - { - EAggregateNo = 1<<30, - EAggregateYes = 1<<31, - EAggregateDefault = 0 - }; - /** - * By default, field value is stored to database and it's indexed as tokenized strings. - */ - static const TInt KDefaultConfig = EStoreYes | EIndexTokenized | EAggregateDefault; - - static const TReal32 KDefaultBoost; - -public: - /** - * Constructor. - * Creates a QCPixDocument object and return a pointer to the created object. - * @return A pointer to the created instance of CCPixDocument. - */ - static QCPixDocument* newInstance(); - - /** - * Destructor - */ - virtual ~QCPixDocument(); - - /** - * Getter: Gets the document identifier. - * @return document identifier. - */ - QString docId() const; - - /** - * Getter: Gets the document excert. - * @return document excerpt. - */ - QString excerpt() const; - - /** - * Getter: Gets the document's base app class. - * @return document's base app class. - */ - QString baseAppClass() const; - - /** - * Getter: Gets the field at aIndex in the document. - * @param aIndex index of the field that is to be retrieved. - * @return QCPixDocumentField that was at aIndex. - */ - const QCPixDocumentField& field( const int aIndex ) const; - - /** - * Getter: Gets the field count. - * @return The number of the fields in the document. - */ - int fieldCount() const; - - /** - * Setter: Sets the document identifier for the document. - * @param aDocId the document identifier to be set. - */ - void setDocId(const QString aDocId); - - /** - * Setter: Sets the excerpt for the document. - * @param aExcerpt the excerpt to be set. - */ - void setExcerpt(const QString aExcerpt); - - /** - * Setter: Sets the base app class for the document. - * @param aBaseAppClass the base app class to be set. - */ - void setBaseAppClass(const QString aBaseAppClass); - - /** - * Setter: Adds a field with aName, aValue and aConfig to the document. - * @param aName The name of the field - * @param aValue The value of the field - * @param aConfig The config of the field - * @return the QCPixDocumentField that was added to the document. - */ - void addField(const QString aName, const QString aValue, const int aConfig = QCPixDocument::KDefaultConfig); - -private: - /** - * Default constructor - */ - QCPixDocument(); - -private: - QCPixDocumentPrivate* const iPvtImpl; - Q_DECLARE_PRIVATE_D( iPvtImpl, QCPixDocument ) - }; - -#endif //_QCPIXDOCUMENT_H diff -r 7c6f43cd91cf -r fcb2a58c181b searchsrv_plat/cpix_search_api/inc/qcpixdocumentfield.h --- a/searchsrv_plat/cpix_search_api/inc/qcpixdocumentfield.h Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,118 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Qt search document field APIs -* -*/ - -#ifndef _QCPIXDOCUMENTFIELD_H -#define _QCPIXDOCUMENTFIELD_H - -#ifdef BUILD_DLL -#define DLL_EXPORT Q_DECL_EXPORT -#else -#define DLL_EXPORT Q_DECL_IMPORT -#endif - -/** - * @file - * @ingroup Qt Search ClientAPI - * @brief Contains CCPixDocument field APIs - */ - -#include - -//Forward decelaration -class QCPixDocumentFieldPrivate; - -/** - * @brief Represents the fields of documents returned as a result of a search query. - * @ingroup ClientAPI - * - * Link against: QCPixSearchClient.lib - */ -class DLL_EXPORT QCPixDocumentField: public QObject - { - Q_OBJECT -public: - /** - * Constructor. - * Creates a QCPixDocumentField object and return a pointer to the created object. - * @param aName Name of the field - * @param aValue Value of the field - * @param aConfig Config for the field - * @return A pointer to the created instance of QCPixDocumentField. - * - * @note After using this constructor, the client has to mandatorily call - * SetDatabase() before invoking any search. - */ - static QCPixDocumentField* newInstance( const QString aName, const QString aValue, const int aConfig ); - - /** - * Destructor. - */ - virtual ~QCPixDocumentField(); - - /** - * Getter: Gets the name of the field. - * @return The name of the field - */ - QString name() const; - - /** - * Getter: Gets the Value of the field. - * @return The value of the field - */ - QString value() const; - - /** - * Getter: Gets the Config of the field. - * @return The config of the field - */ - int config() const; - - /** - * Setter: Sets the Name of the field. - * @param aName The name of the field - */ - void setName(const QString aName); - - /** - * Setter: Sets the Value of the field. - * @param aValue The value of the field - */ - void setValue(const QString aValue); - - /** - * Setter: Sets the Name of the field. - * @param aConfig The config of the field - */ - void setConfig(const int aConfig); - -private: - /** - * Constructor. - * Creates a QCPixDocumentField object and return a pointer to the created object. - * @param aName Name of the field - * @param aValue Value of the field - * @param aConfig Config for the field - * @return A pointer to the created instance of QCPixDocumentField. - */ - QCPixDocumentField(const QString aName, const QString aValue, const int aConfig); - -private: - QCPixDocumentFieldPrivate* const iPvtImpl; - Q_DECLARE_PRIVATE_D( iPvtImpl, QCPixDocumentField ) - }; - -#endif //_QCPIXDOCUMENTFIELD_H diff -r 7c6f43cd91cf -r fcb2a58c181b searchsrv_plat/cpix_search_api/inc/qcpixsearcher.h --- a/searchsrv_plat/cpix_search_api/inc/qcpixsearcher.h Mon Jul 12 00:18:57 2010 +0530 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,263 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Qt search APIs -* -*/ - -#ifndef _QCPIXSEARCHER_H -#define _QCPIXSEARCHER_H - -//Uncomment the following line to enable performance measurements -//#define OST_TRACE_COMPILER_IN_USE - -#ifdef OST_TRACE_COMPILER_IN_USE - -#include -#include -#define PERF_SEARCH_START_TIMER searchTimer.start(); -#define PERF_SEARCH_RESTART_TIMER searchTimer.restart(); -#define PERF_SEARCH_ENDLOG qDebug() << "Search QT API took: " << searchTimer.elapsed() << "msec"; - -#define PERF_GETDOC_START_TIMER getDocumentTimer.start(); -#define PERF_GETDOC_RESTART_TIMER getDocumentTimer.restart(); -#define PERF_GETDOC_ENDLOG qDebug() << "Search QT API took: " << getDocumentTimer.elapsed() << "msec"; - -#define PERF_TIME_NOW(message) qDebug() << "Search QT API: " << QString(message) << ": " << QTime::currentTime().toString("hh:mm:ss.zzz"); - -#else - -#define PERF_SEARCH_START_TIMER -#define PERF_SEARCH_RESTART_TIMER -#define PERF_SEARCH_ENDLOG -#define PERF_GETDOC_START_TIMER -#define PERF_GETDOC_RESTART_TIMER -#define PERF_GETDOC_ENDLOG -#define PERF_TIME_NOW(message) - -#endif - -/** - * @file - * @ingroup Search Client API fpr Qt Clients - * @brief Contains CCPixSearcher used for searching - */ - -#ifdef BUILD_DLL -#define DLL_EXPORT Q_DECL_EXPORT -#else -#define DLL_EXPORT Q_DECL_IMPORT -#endif - -#include -#include - -//forward declarations -class QCPixDocument; -class QCPixSearcherPrivate; - -// CLASS DECLARATION -/** - * @brief Used for searching. - * @ingroup Qt Search Client API - * Link against: qcpixsearchclient.lib - * - * An instance of QCPixSearcher is used to commit search operations. - * - * Example code: - * - * Usecase 1: Sync calls. - * \code - * QCPixSearcher* searcher = QCPixSearcher::newInstance("root"); - * if(searcher){ - * int hitCount = searcher->Search("search for me"); - * for(int i=0; iSetDatabase("root"); - * int hitCount = searcher->Search("search for me"); - * for(int i=0; iSearch("search for me"); - * GetDocumentAsync( iCurrentDocumentCount++ ); - * - * ClientClass::ClientHandleGetDocumentCompleteSlot(int aError, QCPixDocument* aDocument){ - * if( KErrNone != aError ){ - * //do something with aDocument - * } - * GetDocumentAsync( iCurrentDocumentCount++ ); //Now get the next document. - * } - * - * \endcode - * - */ -class DLL_EXPORT QCPixSearcher: public QObject - { - Q_OBJECT -public: - /** - * Constructor. - * Creates a QCPixSearcher object and return a pointer to the created object. - * @return A pointer to the created instance of CCPixSearcher. - * - * @note After using this constructor, the client has to mandatorily call - * SetDatabase() before invoking any search. - */ - static QCPixSearcher* newInstance(); - - /** - * Overloaded constructor - * Creates a CCPixSearcher object and return a pointer to the created object. - * If this constructor is used, the client can directly invoke Search without - * the need to call SetDatabase. - * @param aBaseAppClass The baseAppClass on which to invoke searches on. - * @param aDefaultSearchField Default field where the keywords are searched from. - * @return A pointer to the created instance of CCPixSearcher. - */ - static QCPixSearcher* newInstance( QString aBaseAppClass, QString aDefaultSearchField=NULL ); - - /** - * Destructor. - */ - ~QCPixSearcher(); - - /** - * Synchronously set (or change the database, if already set) on which to invoke subsequent searches. - * @param aBaseAppClass baseAppClass whose corresponding database is to be opened. - */ - void setDatabase(QString aBaseAppClass) THROWS_EXCEPTION; - - /** - * Asynchronously set (or change the database, if already set) on which to invoke subsequent searches. - * @param aBaseAppClass baseAppClass whose corresponding database is to be opened. - * - * @note Client is notified on completion of this call via HandleDatabaseSet signal. - */ - void setDatabaseAsync(QString aBaseAppClass) THROWS_EXCEPTION; - - /** - * Syncronously search for aSearchString. - * @param aSearchString keywords to be searched for. - * @param aDefaultSearchField Default field where the keywords are searched from. - * @return Estimated number of documents containing aSearchString. - */ - int search(QString aSearchString, QString aDefaultSearchField=NULL) THROWS_EXCEPTION; - - /** - * Asyncronously search for aSearchString. - * @param aSearchString keywords to be searched for. - * @param aDefaultSearchField Default field where the keywords are searched from. - * @return Estimated number of documents containing aSearchString. - * - * @note Client is notified on completion of this call via HandleSearchResults signal. - */ - void searchAsync(QString aSearchString, QString aDefaultSearchField=NULL) THROWS_EXCEPTION; - - /** - * Synchronously get the document with index aIndex. - * @param aIndex Index of document to be retrieved - * @return A pointer to QCPixDocument that has been retrieved. Null on error. - * - * @note This should be called only after the synchronous search call has returned - * and aIndex should be between 0 and estimated count returned by Search(). - */ - QCPixDocument* getDocument(int aIndex) THROWS_EXCEPTION; - - /** - * Asynchronously get the document with index aIndex. - * @param aIndex Index of document to be retrieved - * @return A pointer to QCPixDocument that has been retrieved. Null on error. - * - * @note This should be called only after the synchronous search call has returned - * and aIndex should be between 0 and estimated count returned by Search(). - */ - void getDocumentAsync(int aIndex) THROWS_EXCEPTION; - - /** - * Cancels any outstanding searches. - */ - void cancelSearch(); - -signals: - /** - * Notify completion of SetDatabaseAsyc - * @param aError Completion (error) code of SetDatabaseAsync - */ - void handleDatabaseSet(int aError); - - /** - * Notify completion of SearchAsyc - * @param aError Completion (error) code of SearchAsyc - * @param aEstimatedResultCount Estimated number of documents found after SearchAsync - */ - void handleSearchResults(int aError, int aEstimatedResultCount); - - /** - * Notify completion of GetDatabaseAsyc - * @param aError Completion (error) code of GetDatabaseAsyc - * @param aDocument The requested document. - */ - void handleDocument(int aError, QCPixDocument* aDocument); - -private: - /** - * Default Constructor. - */ - QCPixSearcher(); - - /** - * Constructor. - * Creates a QCPixSearcher object and return a pointer to the created object. - * @param aDefaultSearchField Default field where the keywords are searched from. - * @return A pointer to the created instance of CCPixSearcher. - * - * @note After using this constructor, the client has to mandatorily call - * SetDatabase() before invoking any search. - */ - QCPixSearcher( QString aDefaultSearchField=NULL ); - - QCPixSearcherPrivate* const iPvtImpl; - Q_DECLARE_PRIVATE_D( iPvtImpl, QCPixSearcher ) - -#ifdef OST_TRACE_COMPILER_IN_USE - QTime searchTimer; - QTime getDocumentTimer; -#endif - }; - -#endif //_QCPIXSEARCHER_H diff -r 7c6f43cd91cf -r fcb2a58c181b sis/cpixsearch.pkg.source --- a/sis/cpixsearch.pkg.source Mon Jul 12 00:18:57 2010 +0530 +++ b/sis/cpixsearch.pkg.source Mon Jul 26 12:27:31 2010 +0530 @@ -94,10 +94,10 @@ "$(EPOCROOT)epoc32\release\armv5\$(TARGET)\cpixfileplugin.dll" -"c:\sys\bin\cpixfileplugin.dll" -"$(EPOCROOT)epoc32\data\z\resource\plugins\cpixbookmarksplugin.rsc" --"c:\resource\plugins\cpixbookmarksplugin.rsc" -"$(EPOCROOT)epoc32\release\armv5\$(TARGET)\cpixbookmarksplugin.dll" --"c:\sys\bin\cpixbookmarksplugin.dll" +;"$(EPOCROOT)epoc32\data\z\resource\plugins\cpixbookmarksplugin.rsc" +;-"c:\resource\plugins\cpixbookmarksplugin.rsc" +;"$(EPOCROOT)epoc32\release\armv5\$(TARGET)\cpixbookmarksplugin.dll" +;-"c:\sys\bin\cpixbookmarksplugin.dll" "$(EPOCROOT)epoc32\data\z\resource\plugins\cpixcalendarplugin.rsc" -"c:\resource\plugins\cpixcalendarplugin.rsc" @@ -119,7 +119,7 @@ -"c:\sys\bin\cpixnotesplugin.dll" -"\epoc32\release\armv5\$(TARGET)\qcpixsearchclient.dll" - "!:\sys\bin\qcpixsearchclient.dll" +"\epoc32\release\armv5\$(TARGET)\cpixsearch.dll" - "!:\sys\bin\cpixsearch.dll" @"centrep.sisx", (0x10202BE9) ;Email Plugin