--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/vtengines/videoteleng/Src/Base/CVtEngCRObserverItem.cpp Mon Nov 23 14:47:47 2009 +0200
@@ -0,0 +1,242 @@
+/*
+* Copyright (c) 2004-2006 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: Video call CR listener.
+*
+*/
+
+
+
+// INCLUDE FILES
+#include "CVtEngCRObserverItem.h"
+#include <centralrepository.h>
+#include "MVtEngCRSettingObserver.h"
+#include <cvtlogger.h>
+
+// ============================ MEMBER FUNCTIONS ===============================
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::CVtEngCRObserverItem
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+CVtEngCRObserverItem::CVtEngCRObserverItem(
+ MVtEngCRSettingObserver* aObserver,
+ TUid aUid, TUint32 aKey,
+ CCenRepNotifyHandler::TCenRepKeyType aType ) :
+ iObserver( aObserver ), iUid( aUid ), iKey( aKey ), iType( aType ),
+ iNotifier( NULL )
+ {
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::NewL
+// Two-phased constructor.
+// -----------------------------------------------------------------------------
+//
+CVtEngCRObserverItem* CVtEngCRObserverItem::NewL(
+ MVtEngCRSettingObserver* aObserver,
+ TUid aUid, TUint32 aKey,
+ CCenRepNotifyHandler::TCenRepKeyType aType )
+ {
+ __VTPRINTENTER( "CRListener.NewL" )
+ CVtEngCRObserverItem* self =
+ new( ELeave ) CVtEngCRObserverItem( aObserver, aUid, aKey, aType );
+ __VTPRINTEXIT( "CRListener.NewL" )
+ return self;
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::~CVtEngCRObserverItem
+// Destructor.
+// -----------------------------------------------------------------------------
+//
+CVtEngCRObserverItem::~CVtEngCRObserverItem()
+ {
+ __VTPRINTENTER( "CRListener.~" )
+ if ( iNotifier )
+ {
+ iNotifier->StopListening();
+ }
+ delete iNotifier;
+ __VTPRINTEXIT( "CRListener.~" )
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::Offer
+// Checks if uid and id match this observer's.
+// -----------------------------------------------------------------------------
+//
+TBool CVtEngCRObserverItem::Offer( const TUid aUid, const TUint32 aKey ) const
+ {
+ return aUid == iUid && iKey == aKey ? ETrue : EFalse;
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::Offer
+// Checks if uid matches this observer's.
+// -----------------------------------------------------------------------------
+//
+TBool CVtEngCRObserverItem::Offer( const TUid aUid ) const
+ {
+ return aUid == iUid ? ETrue : EFalse;
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::Offer
+// Checks if id matches this observer's.
+// -----------------------------------------------------------------------------
+//
+TBool CVtEngCRObserverItem::Offer( const TUint32 aKey ) const
+ {
+ return iKey == aKey ? ETrue : EFalse;
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::SetCenRepNotifier
+// Sets the actual change handler to this object.
+// -----------------------------------------------------------------------------
+//
+void CVtEngCRObserverItem::SetCenRepNotifier( CCenRepNotifyHandler* aNotifier )
+ {
+ iNotifier = aNotifier;
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::HandleNotifyInt
+// Callback of changed int value.
+// -----------------------------------------------------------------------------
+//
+void CVtEngCRObserverItem::HandleNotifyInt( TUint32 aId, TInt aNewValue )
+ {
+ __VTPRINTENTER( "CRListener.Int" )
+ iObserver->HandleNotifyInt( iUid, aId, aNewValue );
+ __VTPRINTEXIT( "CRListener.Int" )
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::HandleNotifyReal
+// Callback of changed real value.
+// -----------------------------------------------------------------------------
+//
+void CVtEngCRObserverItem::HandleNotifyReal( TUint32 aId, TReal aNewValue )
+ {
+ __VTPRINTENTER( "CRListener.Real" )
+ iObserver->HandleNotifyReal( iUid, aId, aNewValue );
+ __VTPRINTEXIT( "CRListener.Real" )
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::HandleNotifyString
+// Callback of changed string value.
+// -----------------------------------------------------------------------------
+//
+void CVtEngCRObserverItem::HandleNotifyString( TUint32 aId,
+ const TDesC16& aNewValue )
+ {
+ __VTPRINTENTER( "CRListener.String" )
+ iObserver->HandleNotifyString( iUid, aId, aNewValue );
+ __VTPRINTEXIT( "CRListener.String" )
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::HandleNotifyBinary
+// Callback of changed binary value.
+// -----------------------------------------------------------------------------
+//
+void CVtEngCRObserverItem::HandleNotifyBinary( TUint32 /* aId */,
+ const TDesC8& /* aNewValue */ )
+ {
+ __VTPRINTENTER( "CRListener.Binary" )
+ __VTPRINTEXIT( "CRListener.Binary" )
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::HandleNotifyGeneric
+// Callback of a change in central repository.
+// -----------------------------------------------------------------------------
+//
+void CVtEngCRObserverItem::HandleNotifyGeneric( TUint32 /* aId */ )
+ {
+ __VTPRINTENTER( "CRListener.Generic" )
+ __VTPRINTEXIT( "CRListener.Generic" )
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::HandleNotifyError
+// Callback of an error occurred.
+// -----------------------------------------------------------------------------
+//
+#ifdef VTDEBUG
+void CVtEngCRObserverItem::HandleNotifyError( TUint32 aId, TInt aError,
+ CCenRepNotifyHandler* /* aHandler */ )
+#else
+void CVtEngCRObserverItem::HandleNotifyError(
+ TUint32 /* aId */, TInt /* aError */, CCenRepNotifyHandler* /* aHandler */ )
+#endif // VTDEBUG
+ {
+ __VTPRINT3( DEBUG_GEN, "CRListener.error id=%d,err=%d ", aId, aError )
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::Uid
+// Returns Uid for this observer.
+// -----------------------------------------------------------------------------
+//
+TUid CVtEngCRObserverItem::Uid() const
+ {
+ return iUid;
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::Key
+// Returns Key for this observer.
+// -----------------------------------------------------------------------------
+//
+TUint32 CVtEngCRObserverItem::Key() const
+ {
+ return iKey;
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::Notifier
+// Returns Notifier for this observer.
+// -----------------------------------------------------------------------------
+//
+CCenRepNotifyHandler* CVtEngCRObserverItem::Notifier() const
+ {
+ return iNotifier;
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::Type
+// Returns Type for this observer.
+// -----------------------------------------------------------------------------
+//
+CCenRepNotifyHandler::TCenRepKeyType CVtEngCRObserverItem::Type() const
+ {
+ return iType;
+ }
+
+// -----------------------------------------------------------------------------
+// CVtEngCRObserverItem::Observer
+// Returns true observer for this observer.
+// -----------------------------------------------------------------------------
+//
+MVtEngCRSettingObserver* CVtEngCRObserverItem::Observer() const
+ {
+ return iObserver;
+ }
+
+// End of File