contentstorage/castorage/src/casqlquerycreator.cpp
changeset 127 7b66bc3c6dc9
parent 107 b34d53f6acdf
equal deleted inserted replaced
126:efda7c0771b9 127:7b66bc3c6dc9
   517         RPointerArray<CCaSqlQuery>& aSqlQuery, RSqlDatabase& aSqlDb )
   517         RPointerArray<CCaSqlQuery>& aSqlQuery, RSqlDatabase& aSqlDb )
   518     {
   518     {
   519     DEBUG(("_CA_:CASqlQueryCreator::CreateRemoveQueryL"));
   519     DEBUG(("_CA_:CASqlQueryCreator::CreateRemoveQueryL"));
   520 
   520 
   521     CCaSqlQuery* query = CCaSqlQuery::NewLC( aSqlDb );
   521     CCaSqlQuery* query = CCaSqlQuery::NewLC( aSqlDb );
   522     query->SetQueryL( KSQLDeleteLaunch );
       
   523     aSqlQuery.Append( query );
       
   524     CleanupStack::Pop( query );
       
   525 
       
   526     query = CCaSqlQuery::NewLC( aSqlDb );
       
   527     query->SetQueryL( KSQLDeleteEntryFromGroup );
   522     query->SetQueryL( KSQLDeleteEntryFromGroup );
   528     aSqlQuery.Append( query );
   523     aSqlQuery.Append( query );
   529     CleanupStack::Pop( query );
   524     CleanupStack::Pop( query );
   530 
   525 
   531     query = CCaSqlQuery::NewLC( aSqlDb );
   526     query = CCaSqlQuery::NewLC( aSqlDb );
   557 void CaSqlQueryCreator::CreateTouchQueryL(
   552 void CaSqlQueryCreator::CreateTouchQueryL(
   558         RPointerArray<CCaSqlQuery>& aSqlQuery, RSqlDatabase& aSqlDb, 
   553         RPointerArray<CCaSqlQuery>& aSqlQuery, RSqlDatabase& aSqlDb, 
   559         TBool aRemovable )
   554         TBool aRemovable )
   560     {
   555     {
   561     DEBUG(("_CA_:CASqlQueryCreator::CreateTouchQueryL"));
   556     DEBUG(("_CA_:CASqlQueryCreator::CreateTouchQueryL"));
   562 
   557     
   563     CCaSqlQuery* query = CCaSqlQuery::NewLC( aSqlDb );
       
   564     query->SetQueryL( KSQLInsertToLaunch );
       
   565     aSqlQuery.Append( query );
       
   566     CleanupStack::Pop( query );
       
   567     if( aRemovable )
   558     if( aRemovable )
   568         {
   559         {
   569         query = CCaSqlQuery::NewLC( aSqlDb );
   560         CCaSqlQuery* query = CCaSqlQuery::NewLC( aSqlDb );
   570         query->SetQueryL( KSQLUpdateEntryUsedFlag );
   561         query->SetQueryL( KSQLUpdateEntryUsedFlag );
   571         aSqlQuery.Append( query );
   562         aSqlQuery.Append( query );
   572         CleanupStack::Pop( query );
   563         CleanupStack::Pop( query );
   573         }
   564         }
   574     }
   565     }
   929             aQuery.ReAllocL( aQuery.Length()
   920             aQuery.ReAllocL( aQuery.Length()
   930                     + KSQLSortOrderCreatedTimestampDesc().Length() );
   921                     + KSQLSortOrderCreatedTimestampDesc().Length() );
   931             aQuery.Append( KSQLSortOrderCreatedTimestampDesc );
   922             aQuery.Append( KSQLSortOrderCreatedTimestampDesc );
   932             break;
   923             break;
   933             }
   924             }
   934         case CCaInnerQuery::MostUsed:
       
   935         case CCaInnerQuery::MostUsedDesc:
       
   936         case CCaInnerQuery::LastUsed:
       
   937         case CCaInnerQuery::LastUsedDesc:
       
   938             {
       
   939             ModifyQueryForSortOrderLastMostUsedL( aSortType, aQuery );
       
   940             break;
       
   941             }
       
   942         case CCaInnerQuery::DefaultDesc:
   925         case CCaInnerQuery::DefaultDesc:
   943             {
   926             {
   944             if( aSortByGroup )
   927             if( aSortByGroup )
   945                 {
   928                 {
   946                 aQuery.ReAllocL( aQuery.Length()
   929                 aQuery.ReAllocL( aQuery.Length()
   977 
   960 
   978 // ---------------------------------------------------------------------------
   961 // ---------------------------------------------------------------------------
   979 //
   962 //
   980 // ---------------------------------------------------------------------------
   963 // ---------------------------------------------------------------------------
   981 //
   964 //
   982 void CaSqlQueryCreator::ModifyQueryForSortOrderLastMostUsedL(
       
   983         const CCaInnerQuery::TSortAttribute aSortType, RBuf& aQuery )
       
   984     {
       
   985     DEBUG(("_CA_:CASqlQueryCreator::ModifyQueryForSortOrderLastMostUsedL"));
       
   986 
       
   987     RBuf descPart;
       
   988     descPart.CleanupClosePushL();
       
   989     if( aSortType == CCaInnerQuery::MostUsedDesc || 
       
   990          aSortType == CCaInnerQuery::LastUsedDesc )
       
   991         {
       
   992         descPart.CreateL( KDesc );
       
   993         }
       
   994     else
       
   995         {
       
   996         descPart.CreateL( KNullDesC );
       
   997         }
       
   998 
       
   999     RBuf usageDataQuery;
       
  1000     usageDataQuery.CleanupClosePushL();
       
  1001     if( aSortType == CCaInnerQuery::MostUsed || 
       
  1002          aSortType == CCaInnerQuery::MostUsedDesc )
       
  1003         {
       
  1004         usageDataQuery.CreateL( KSQLGetMostUsed );
       
  1005         }
       
  1006     else
       
  1007         {
       
  1008         usageDataQuery.CreateL( KSQLGetLastUsed );
       
  1009         }
       
  1010 
       
  1011     RBuf newQuery;
       
  1012     newQuery.CleanupClosePushL();
       
  1013     newQuery.CreateL( KSQLGetListByLaunchDataPart1().Length() +
       
  1014             KSQLGetListByLaunchDataPart1().Length() +
       
  1015             KSQLGetListByLaunchDataPart3().Length() +
       
  1016             usageDataQuery.Length() +
       
  1017             descPart.Length() +
       
  1018             aQuery.Length() );
       
  1019     newQuery.Append( KSQLGetListByLaunchDataPart1 );
       
  1020     newQuery.Append( aQuery );
       
  1021     newQuery.Append( KSQLGetListByLaunchDataPart2 );
       
  1022     newQuery.Append( usageDataQuery );
       
  1023     newQuery.Append( KSQLGetListByLaunchDataPart3 );
       
  1024     newQuery.Append( descPart );
       
  1025     aQuery.Close();
       
  1026     aQuery.CreateL( newQuery );
       
  1027 
       
  1028     CleanupStack::PopAndDestroy( &newQuery );
       
  1029     CleanupStack::PopAndDestroy( &usageDataQuery );
       
  1030     CleanupStack::PopAndDestroy( &descPart );
       
  1031     }
       
  1032 
       
  1033 // ---------------------------------------------------------------------------
       
  1034 //
       
  1035 // ---------------------------------------------------------------------------
       
  1036 //
       
  1037 TBool CaSqlQueryCreator::CreateOrganizeQueryL(
   965 TBool CaSqlQueryCreator::CreateOrganizeQueryL(
  1038         const RArray<TInt>& aEntryIds, TCaOperationParams aParams,
   966         const RArray<TInt>& aEntryIds, TCaOperationParams aParams,
  1039         RSqlDatabase& aSqlDb, RPointerArray<CCaSqlQuery>& aSqlQueries )
   967         RSqlDatabase& aSqlDb, RPointerArray<CCaSqlQuery>& aSqlQueries )
  1040     {
   968     {
  1041     DEBUG(("_CA_:CASqlQueryCreator::CreateOrganizeQueryL"));
   969     DEBUG(("_CA_:CASqlQueryCreator::CreateOrganizeQueryL"));