qtcontactsmobility/plugins/contacts/symbian/src/filtering/cntsymbianfiltersql.cpp
changeset 31 2a11b5b00470
parent 27 de1630741fbe
child 37 fd64c38c277d
equal deleted inserted replaced
27:de1630741fbe 31:2a11b5b00470
    59 #include <QLatin1String>
    59 #include <QLatin1String>
    60 #include <e32cmn.h>
    60 #include <e32cmn.h>
    61 #include <cntdb.h>
    61 #include <cntdb.h>
    62 
    62 
    63 
    63 
    64 CntSymbianFilter::CntSymbianFilter(QContactManagerEngine& /*manager*/, CContactDatabase& contactDatabase, const CntTransformContact &transformContact):
    64 CntSymbianFilter::CntSymbianFilter(QContactManagerEngine& /*manager*/, CContactDatabase& contactDatabase, CntSymbianSrvConnection &srvConnection, const CntTransformContact &transformContact):
    65     m_contactDatabase(contactDatabase),
    65     m_contactDatabase(contactDatabase),
    66     m_transformContact(transformContact)
    66     m_transformContact(transformContact),
       
    67     m_srvConnection(srvConnection)
    67 {
    68 {
    68     m_srvConnection = new CntSymbianSrvConnection();
       
    69     m_dbInfo = new CntDbInfo();
    69     m_dbInfo = new CntDbInfo();
    70     initializeFilters();
    70     initializeFilters();
    71       
       
    72 }
    71 }
    73 
    72 
    74 void CntSymbianFilter::initializeFilters()
    73 void CntSymbianFilter::initializeFilters()
    75     {
    74 {
    76     m_filterMap.insert(QContactFilter::ContactDetailFilter, new CntFilterDetail(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    75     m_filterMap.insert(QContactFilter::ContactDetailFilter, new CntFilterDetail(m_contactDatabase,m_srvConnection,*m_dbInfo));
    77     m_filterMap.insert(QContactFilter::DefaultFilter, new CntFilterDefault(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    76     m_filterMap.insert(QContactFilter::DefaultFilter, new CntFilterDefault(m_contactDatabase,m_srvConnection,*m_dbInfo));
    78     m_filterMap.insert(QContactFilter::IntersectionFilter, new CntFilterIntersection(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    77     m_filterMap.insert(QContactFilter::IntersectionFilter, new CntFilterIntersection(m_contactDatabase,m_srvConnection,*m_dbInfo));
    79     m_filterMap.insert(QContactFilter::UnionFilter, new CntFilterUnion(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    78     m_filterMap.insert(QContactFilter::UnionFilter, new CntFilterUnion(m_contactDatabase,m_srvConnection,*m_dbInfo));
    80     m_filterMap.insert(QContactFilter::RelationshipFilter, new CntFilterRelationship(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    79     m_filterMap.insert(QContactFilter::RelationshipFilter, new CntFilterRelationship(m_contactDatabase,m_srvConnection,*m_dbInfo));
    81     m_filterMap.insert(QContactFilter::InvalidFilter, new CntFilterInvalid(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    80     m_filterMap.insert(QContactFilter::InvalidFilter, new CntFilterInvalid(m_contactDatabase,m_srvConnection,*m_dbInfo));
    82     m_filterMap.insert(QContactFilter::ContactDetailRangeFilter, new CntFilterdetailrange(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    81     m_filterMap.insert(QContactFilter::ContactDetailRangeFilter, new CntFilterdetailrange(m_contactDatabase,m_srvConnection,*m_dbInfo));
    83     m_filterMap.insert(QContactFilter::ChangeLogFilter, new CntFilterChangeLog(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    82     m_filterMap.insert(QContactFilter::ChangeLogFilter, new CntFilterChangeLog(m_contactDatabase,m_srvConnection,*m_dbInfo));
    84     m_filterMap.insert(QContactFilter::ActionFilter, new CntFilterAction(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    83     m_filterMap.insert(QContactFilter::ActionFilter, new CntFilterAction(m_contactDatabase,m_srvConnection,*m_dbInfo));
    85     m_filterMap.insert(QContactFilter::LocalIdFilter, new CntFilterLocalId(m_contactDatabase,*m_srvConnection,*m_dbInfo));
    84     m_filterMap.insert(QContactFilter::LocalIdFilter, new CntFilterLocalId(m_contactDatabase,m_srvConnection,*m_dbInfo));
    86     
    85 }
    87     }
       
    88 
       
    89 
       
    90 
    86 
    91 CntSymbianFilter::~CntSymbianFilter()
    87 CntSymbianFilter::~CntSymbianFilter()
    92 {
    88 {
    93     
       
    94     
       
    95     //delete the all filters from the map
    89     //delete the all filters from the map
    96     QMap<QContactFilter::FilterType, CntAbstractContactFilter*>::iterator itr;
    90     QMap<QContactFilter::FilterType, CntAbstractContactFilter*>::iterator itr;
    97 
    91 
    98     for (itr = m_filterMap.begin(); itr != m_filterMap.end(); ++itr)
    92     for (itr = m_filterMap.begin(); itr != m_filterMap.end(); ++itr)
    99     {
    93     {
   100         CntAbstractContactFilter* value = itr.value();
    94         CntAbstractContactFilter* value = itr.value();
   101         delete value;
    95         delete value;
   102         value = 0;
    96         value = 0;
   103     }
    97     }
   104     
    98     
   105     delete m_srvConnection;
       
   106     delete m_dbInfo;  
    99     delete m_dbInfo;  
   107 }
   100 }
   108 
   101 
   109 QList<QContactLocalId> CntSymbianFilter::contacts(
   102 QList<QContactLocalId> CntSymbianFilter::contacts(
   110             const QContactFilter& filter,
   103             const QContactFilter& filter,