callcontinuity/vcc/src/vccengpspropertylistener.cpp
branchRCL_3
changeset 21 f742655b05bf
parent 20 65a3ef1d5bd0
child 22 d38647835c2e
--- a/callcontinuity/vcc/src/vccengpspropertylistener.cpp	Thu Aug 19 09:45:22 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,197 +0,0 @@
-/*
-* Copyright (c) 2007 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:   Observes the state of P&S property
-*
-*/
-
-
-
-#include <e32cmn.h>
-#include <vccsubscribekeys.h>
-
-#include "vccengpspropertylistener.h"
-#include "rubydebug.h"
-
-//#include "vccuipropertyhandler.pan"
-
-// ======== MEMBER FUNCTIONS ========
-// -----------------------------------------------------------------------------
-// C++ constructor
-// -----------------------------------------------------------------------------
-//
-CVccEngPsPropertyListener::CVccEngPsPropertyListener( 
-const TUid aCategoryUid,
-		const TUint aKeyId ):
-CActive( EPriorityStandard ),
-iCategoryId( aCategoryUid ),
-iKeyId( aKeyId )
-	{
-	RUBY_DEBUG_BLOCK( "VccEngPsPropertyListener::CVccEngPsPropertyListener" );
-	}
-
-// -----------------------------------------------------------------------------
-// 2nd phase constructor
-// -----------------------------------------------------------------------------
-//
-void CVccEngPsPropertyListener::ConstructL()
-    {
-    RUBY_DEBUG_BLOCKL( "CVccEngPsPropertyListener::ConstructL" );
-    // Attach to categroy and key.
-    User::LeaveIfError( iProperty.Attach( iCategoryId, iKeyId ));
-    // Add to active scheduler
-    CActiveScheduler::Add( this );
-    }
-
-// -----------------------------------------------------------------------------
-// Constructor
-// -----------------------------------------------------------------------------
-//
-CVccEngPsPropertyListener* CVccEngPsPropertyListener::NewL(
-		                                                 const TUid aCategoryId, 
-		                                                 const TUint aKeyId)   
-    {
-	RUBY_DEBUG_BLOCKL("CVccEngPsPropertyListener::NewL");
-   
-	CVccEngPsPropertyListener* self = new (ELeave) CVccEngPsPropertyListener( 
-			                                              aCategoryId, aKeyId );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop( self );
-   
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// Destructor
-// -----------------------------------------------------------------------------
-//
-CVccEngPsPropertyListener::~CVccEngPsPropertyListener()
-    {
-    RUBY_DEBUG0( "CVccEngPsPropertyListener::~CVccEngPsPropertyListener() - ENTER" );
-    Cancel();
-    iProperty.Close();
-    iObservers.Close();
-    RUBY_DEBUG0( "CVccEngPsPropertyListener::~CVccEngPsPropertyListener() - EXIT" );
-    }
-
-// -----------------------------------------------------------------------------
-// Add Vcc property observer
-// -----------------------------------------------------------------------------
-//
-void CVccEngPsPropertyListener::AddObserverL( 
-        MVccEngPsPropertyListenerObserver& aObserver )
-    {
-    RUBY_DEBUG_BLOCKL( "CVccEngPsPropertyListener::AddObserverL" );
-    
-    if ( iObservers.Find( &aObserver ) == KErrNotFound )
-        {
-        User::LeaveIfError( iObservers.Append( &aObserver ) );
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// Removes observer
-// -----------------------------------------------------------------------------
-//
-void CVccEngPsPropertyListener::RemoveObserver( 
-        MVccEngPsPropertyListenerObserver& aObserver )
-    {
-    RUBY_DEBUG_BLOCK( "CVccEngPsPropertyListener::RemoveObserver" );
-   
-    TInt index = iObservers.Find( &aObserver );
-    
-    if ( index != KErrNotFound )
-        {
-        iObservers.Remove( index );
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// Fetches the current value of the key
-// -----------------------------------------------------------------------------
-//
-TInt CVccEngPsPropertyListener::CurrentValue()
-    {
-    RUBY_DEBUG_BLOCK( "CVccEngPsPropertyListener::CurrentValue" );
-   
-    TInt value( KErrNotFound );
-    iProperty.Get( iCategoryId, iKeyId, value );
-    return value;
-    }
-
-
-// -----------------------------------------------------------------------------
-// Cancels the outstanding subsription request
-// -----------------------------------------------------------------------------
-//
-void CVccEngPsPropertyListener::DoCancel()
-    {
-    RUBY_DEBUG0( "CVccEngPsPropertyListener::DoCancel - ENTER" );
-    iProperty.Cancel();
-    RUBY_DEBUG0( "CVccEngPsPropertyListener::DoCancel - EXIT" );
-    }
-
-// -----------------------------------------------------------------------------
-// Subsribes to property
-// -----------------------------------------------------------------------------
-//
-void CVccEngPsPropertyListener::Start()
-    {
-    RUBY_DEBUG_BLOCK( "CVccEngPsPropertyListener::Start" );
-   
-    // Subscribe to get updates.
-    iProperty.Subscribe( iStatus );
-    SetActive();
-    }
-
-// -----------------------------------------------------------------------------
-// RunL
-// -----------------------------------------------------------------------------
-//
-void CVccEngPsPropertyListener::RunL()
-    {
-    TInt err = iStatus.Int();
-Start();
-    RUBY_DEBUG_BLOCK( "CVccEngPsPropertyListener::RunL" );
-    RUBY_DEBUG1( " - Status: %d", iStatus.Int() );
-    if ( KErrNone == err )
-        {
-        RUBY_DEBUG0( " - CVccEngPsPropertyListener::RunL - \
-                     if ( KErrNone == err )" );
-        // Notify property changes to observers.
-        NotifyObserversL();
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// Notify all observers about the changed value
-// -----------------------------------------------------------------------------
-//
-void CVccEngPsPropertyListener::NotifyObserversL()
-    {
-    RUBY_DEBUG_BLOCKL( "CVccEngPsPropertyListener::NotifyObserversL" );
-   
-    TInt value = CurrentValue();
-    RUBY_DEBUG1( " - value [%d]", value );
-   
-    for ( TInt i(0) ; i < iObservers.Count() ; i++ )
-        {
-        MVccEngPsPropertyListenerObserver* observer = iObservers[i];
-
-        if ( observer )
-            {
-            observer->PropertyChangedL( iCategoryId, iKeyId, value );
-            }
-        }
-    }