contentstorage/srvsrc/cammcwatcher.cpp
changeset 124 e36b2f4799c0
parent 103 b99b84bcd2d1
equal deleted inserted replaced
121:0b3699f6c654 124:e36b2f4799c0
    19 
    19 
    20 #include "cammcwatcher.h"
    20 #include "cammcwatcher.h"
    21 
    21 
    22 // ================= MEMBER FUNCTIONS =======================
    22 // ================= MEMBER FUNCTIONS =======================
    23 
    23 
    24 // ---------------------------------------------------------
    24 // ----------------------------------------------------------------------------
    25 // CCaWidgetMmcWatcher::NewL
    25 // 
    26 // Second phase constructor
    26 // ----------------------------------------------------------------------------
    27 // ---------------------------------------------------------
       
    28 //
    27 //
    29 EXPORT_C CCaMmcWatcher* CCaMmcWatcher::NewL( RFs& aFs,
    28 EXPORT_C CCaMmcWatcher* CCaMmcWatcher::NewL( RFs& aFs,
    30         MMmcWatcherCallback* aObserver )
    29         MMmcWatcherCallback* aObserver )
    31     {
    30     {
    32     CCaMmcWatcher* self = NewLC( aFs, aObserver );
    31     CCaMmcWatcher* self = NewLC( aFs, aObserver );
    33     CleanupStack::Pop( self );
    32     CleanupStack::Pop( self );
    34     return self;
    33     return self;
    35     }
    34     }
    36 
    35 
    37 // ---------------------------------------------------------
    36 // ----------------------------------------------------------------------------
    38 // CCaWidgetMmcWatcher::NewLC
    37 // 
    39 // Second phase constructor
    38 // ----------------------------------------------------------------------------
    40 // ---------------------------------------------------------
       
    41 //
    39 //
    42 EXPORT_C CCaMmcWatcher* CCaMmcWatcher::NewLC( RFs& aFs,
    40 EXPORT_C CCaMmcWatcher* CCaMmcWatcher::NewLC( RFs& aFs,
    43         MMmcWatcherCallback* aObserver )
    41         MMmcWatcherCallback* aObserver )
    44     {
    42     {
    45     CCaMmcWatcher* self = new (ELeave) CCaMmcWatcher( aFs,
    43     CCaMmcWatcher* self = new (ELeave) CCaMmcWatcher( aFs,
    47     CleanupStack::PushL ( self );
    45     CleanupStack::PushL ( self );
    48     self->ConstructL();
    46     self->ConstructL();
    49     return self;
    47     return self;
    50     }
    48     }
    51 
    49 
    52 // ---------------------------------------------------------
    50 // ----------------------------------------------------------------------------
    53 // CCaWidgetMmcWatcher::~CCaWidgetMmcWatcher
    51 // 
    54 // Destructor
    52 // ----------------------------------------------------------------------------
    55 // ---------------------------------------------------------
       
    56 //
    53 //
    57 CCaMmcWatcher::~CCaMmcWatcher()
    54 CCaMmcWatcher::~CCaMmcWatcher()
    58     {
    55     {
    59     Cancel();
    56     Cancel();
    60     }
    57     }
    61 
    58 
    62 // ---------------------------------------------------------
    59 // ----------------------------------------------------------------------------
    63 // CCaWidgetMmcWatcher::CCaWidgetMmcWatcher
    60 // 
    64 // Default constructor
    61 // ----------------------------------------------------------------------------
    65 // ---------------------------------------------------------
       
    66 //
    62 //
    67 CCaMmcWatcher::CCaMmcWatcher( RFs& aFs,
    63 CCaMmcWatcher::CCaMmcWatcher( RFs& aFs,
    68         MMmcWatcherCallback* aObserver )
    64         MMmcWatcherCallback* aObserver )
    69     : CActive( CActive::EPriorityStandard ),
    65     : CActive( CActive::EPriorityStandard ),
    70     iFs(aFs),
    66     iFs(aFs),
    71     iObserver(aObserver)
    67     iObserver(aObserver)
    72     {
    68     {
    73     CActiveScheduler::Add(this);
    69     CActiveScheduler::Add(this);
    74     }
    70     }
    75 
    71 
    76 // ---------------------------------------------------------
    72 // ----------------------------------------------------------------------------
    77 // CCaWidgetMmcWatcher::ConstructL
    73 // 
    78 // default Symbian OS constructor
    74 // ----------------------------------------------------------------------------
    79 // ---------------------------------------------------------
       
    80 //
    75 //
    81 void CCaMmcWatcher::ConstructL()
    76 void CCaMmcWatcher::ConstructL()
    82     {
    77     {
    83     WaitForChangeL();
    78     WaitForChangeL();
    84     }
    79     }
    85 
    80 
    86 // ---------------------------------------------------------
    81 // ----------------------------------------------------------------------------
    87 // CCaWidgetMmcWatcher::WaitForChangeL
    82 // 
    88 // Request notification for disk change
    83 // ----------------------------------------------------------------------------
    89 // ---------------------------------------------------------
       
    90 //
    84 //
    91 void CCaMmcWatcher::WaitForChangeL()
    85 void CCaMmcWatcher::WaitForChangeL()
    92     {
    86     {
    93     TInt mmcDrive;
    87     TInt mmcDrive;
    94     User::LeaveIfError( DriveInfo::GetDefaultDrive(
    88     User::LeaveIfError( DriveInfo::GetDefaultDrive(
    96     TDriveName mmcDriveName( TDriveUnit( mmcDrive ).Name() );
    90     TDriveName mmcDriveName( TDriveUnit( mmcDrive ).Name() );
    97     iFs.NotifyChange( ENotifyEntry, iStatus, mmcDriveName );
    91     iFs.NotifyChange( ENotifyEntry, iStatus, mmcDriveName );
    98     SetActive();
    92     SetActive();
    99     }
    93     }
   100 
    94 
   101 // ---------------------------------------------------------
    95 // ----------------------------------------------------------------------------
   102 // CCaWidgetMmcWatcher::DoCancel
    96 // 
   103 // ---------------------------------------------------------
    97 // ----------------------------------------------------------------------------
   104 //
    98 //
   105 void CCaMmcWatcher::DoCancel()
    99 void CCaMmcWatcher::DoCancel()
   106     {
   100     {
   107     iFs.NotifyChangeCancel();
   101     iFs.NotifyChangeCancel();
   108     }
   102     }
   109 
   103 
   110 #ifdef COVERAGE_MEASUREMENT
   104 #ifdef COVERAGE_MEASUREMENT
   111 #pragma CTC SKIP
   105 #pragma CTC SKIP
   112 #endif //COVERAGE_MEASUREMENT (error is ignored)
   106 #endif //COVERAGE_MEASUREMENT (error is ignored)
   113 // ---------------------------------------------------------------------------
   107 // ---------------------------------------------------------------------------
   114 // CCaWidgetMmcWatcher::RunError
   108 // 
   115 // ---------------------------------------------------------------------------
   109 // ---------------------------------------------------------------------------
   116 //
   110 //
   117 TInt CCaMmcWatcher::RunError( TInt /*aError*/ )
   111 TInt CCaMmcWatcher::RunError( TInt /*aError*/ )
   118     {
   112     {
   119     // No need to do anything
   113     // No need to do anything
   124 #endif //COVERAGE_MEASUREMENT
   118 #endif //COVERAGE_MEASUREMENT
   125 
   119 
   126 #ifdef COVERAGE_MEASUREMENT
   120 #ifdef COVERAGE_MEASUREMENT
   127 #pragma CTC SKIP
   121 #pragma CTC SKIP
   128 #endif //COVERAGE_MEASUREMENT (memory card removal)
   122 #endif //COVERAGE_MEASUREMENT (memory card removal)
   129 // ---------------------------------------------------------
   123 // ---------------------------------------------------------------------------
   130 // CCaWidgetMmcWatcher::RunL
   124 // 
   131 // ---------------------------------------------------------
   125 // ---------------------------------------------------------------------------
   132 //
   126 //
   133 void CCaMmcWatcher::RunL()
   127 void CCaMmcWatcher::RunL()
   134     {
   128     {
   135     TInt status( iStatus.Int() );
   129     TInt status( iStatus.Int() );
   136     WaitForChangeL();
   130     WaitForChangeL();