omadrm/drmengine/utils/src/dbwatcher.cpp
branchRCL_3
changeset 18 8a03a285ab14
parent 0 95b198f216e5
child 84 b09186059647
equal deleted inserted replaced
17:e16d72588c28 18:8a03a285ab14
    20 #include <e32base.h>
    20 #include <e32base.h>
    21 #include <f32file.h>
    21 #include <f32file.h>
    22 #include <sysutil.h>
    22 #include <sysutil.h>
    23 
    23 
    24 #ifdef RD_MULTIPLE_DRIVE
    24 #ifdef RD_MULTIPLE_DRIVE
    25 #include <DriveInfo.h>
    25 #include <driveinfo.h>
    26 #endif
    26 #endif
    27 
    27 
    28 #include "dbwatcher.h"
    28 #include "dbwatcher.h"
    29 #include "dirwatcher.h"
    29 #include "dirwatcher.h"
    30 #include "drmlog.h"
    30 #include "drmlog.h"
    34 #else
    34 #else
    35 _LIT( KRdbBaseDir, "c:\\private\\101f51f2\\rdb\\");
    35 _LIT( KRdbBaseDir, "c:\\private\\101f51f2\\rdb\\");
    36 #endif
    36 #endif
    37 
    37 
    38 _LIT( KDomainRoDir, "DomainROs" );
    38 _LIT( KDomainRoDir, "DomainROs" );
    39 static const TChar KDirs[CDbWatcher::KNumDirs] = 
    39 static const TChar KDirs[CDbWatcher::KNumDirs] =
    40     { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
    40     { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
    41     
    41 
    42 // ======== MEMBER FUNCTIONS ========
    42 // ======== MEMBER FUNCTIONS ========
    43 
    43 
    44 void CDbWatcher::ConstructL( MWatcherObserver& aObserver )
    44 void CDbWatcher::ConstructL( MWatcherObserver& aObserver )
    45     {
    45     {
    46     TInt i;
    46     TInt i;
    47     TFileName file;
    47     TFileName file;
    48 
    48 
    49     DRMLOG( _L( "CDbWatcher::ConstructL <-" ) );
    49     DRMLOG( _L( "CDbWatcher::ConstructL <-" ) );
    50     
    50 
    51     User::LeaveIfError( iFs.Connect() );
    51     User::LeaveIfError( iFs.Connect() );
    52     for ( i = 0; i < KNumDirs; i++ )
    52     for ( i = 0; i < KNumDirs; i++ )
    53         {
    53         {
    54         
    54 
    55 #ifndef RD_MULTIPLE_DRIVE
    55 #ifndef RD_MULTIPLE_DRIVE
    56     
    56 
    57         // Ignore errors
    57         // Ignore errors
    58         file.Copy( KRdbBaseDir );
    58         file.Copy( KRdbBaseDir );
    59         
    59 
    60 #else //RD_MULTIPLE_DRIVE
    60 #else //RD_MULTIPLE_DRIVE
    61     
    61 
    62         TInt driveNumber( -1 );
    62         TInt driveNumber( -1 );
    63         TChar driveLetter;
    63         TChar driveLetter;
    64         DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber );
    64         DriveInfo::GetDefaultDrive( DriveInfo::EDefaultSystem, driveNumber );
    65 	    iFs.DriveToChar( driveNumber, driveLetter );
    65         iFs.DriveToChar( driveNumber, driveLetter );
    66 	
    66 
    67 	    TFileName dbBaseDir;
    67         TFileName dbBaseDir;
    68 	    dbBaseDir.Format( KRdbBaseDir, (TUint)driveLetter );
    68         dbBaseDir.Format( KRdbBaseDir, (TUint)driveLetter );
    69         
    69 
    70         // Ignore errors
    70         // Ignore errors
    71         file.Copy( dbBaseDir );
    71         file.Copy( dbBaseDir );
    72         
    72 
    73 #endif
    73 #endif
    74         
    74 
    75         if ( i < KNumDirs - 1 )
    75         if ( i < KNumDirs - 1 )
    76             {
    76             {
    77             file.Append( KDirs[i] ); 
    77             file.Append( KDirs[i] );
    78             }
    78             }
    79         else
    79         else
    80             {
    80             {
    81             file.Append( KDomainRoDir ); 
    81             file.Append( KDomainRoDir );
    82             }
    82             }
    83         iDirWatcher[i] = CDirWatcher::NewL( aObserver, iFs, file );
    83         iDirWatcher[i] = CDirWatcher::NewL( aObserver, iFs, file );
    84         }
    84         }
    85     
    85 
    86     DRMLOG( _L( "CDbWatcher::ConstructL ->" ) );
    86     DRMLOG( _L( "CDbWatcher::ConstructL ->" ) );
    87     }
    87     }
    88 
    88 
    89 CDbWatcher* CDbWatcher::NewL( MWatcherObserver& aObserver )
    89 CDbWatcher* CDbWatcher::NewL( MWatcherObserver& aObserver )
    90     {
    90     {
   100     }
   100     }
   101 
   101 
   102 CDbWatcher::~CDbWatcher()
   102 CDbWatcher::~CDbWatcher()
   103     {
   103     {
   104     TInt i;
   104     TInt i;
   105     
   105 
   106     DRMLOG( _L( "CDbWatcher::~CDbWatcher ->" ) );
   106     DRMLOG( _L( "CDbWatcher::~CDbWatcher ->" ) );
   107 
   107 
   108     for ( i = 0; i < KNumDirs; i++ )
   108     for ( i = 0; i < KNumDirs; i++ )
   109         {
   109         {
   110         delete iDirWatcher[i];
   110         delete iDirWatcher[i];
   111         }    
   111         }
   112     iFs.Close();
   112     iFs.Close();
   113     
   113 
   114     DRMLOG( _L( "CDbWatcher::~CDbWatcher <-" ) );
   114     DRMLOG( _L( "CDbWatcher::~CDbWatcher <-" ) );
   115     }
   115     }
   116 
   116 
   117 void CDbWatcher::StartWatching()
   117 void CDbWatcher::StartWatching()
   118     {
   118     {
   119     TInt i;
   119     TInt i;
   120     
   120 
   121     DRMLOG( _L( "CDbWatcher::StartWatching ->" ) );
   121     DRMLOG( _L( "CDbWatcher::StartWatching ->" ) );
   122     
   122 
   123     for ( i = 0; i < KNumDirs; i++ )
   123     for ( i = 0; i < KNumDirs; i++ )
   124         {
   124         {
   125         iDirWatcher[i]->StartWatching();
   125         iDirWatcher[i]->StartWatching();
   126         }    
   126         }
   127 
   127 
   128     DRMLOG( _L( "CDbWatcher::StartWatching <-" ) );
   128     DRMLOG( _L( "CDbWatcher::StartWatching <-" ) );
   129     }
   129     }