--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/contextframework/cfwplugins/cenrepsourceplugin/src/cenrepattributesnonmasked.cpp Tue Feb 02 10:12:00 2010 +0200
@@ -0,0 +1,142 @@
+/*
+* Copyright (c) 2007-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: CCenRepAttributesNonMasked class implementation.
+*
+*/
+
+
+#include "cenrepattributesnonmasked.h"
+#include "cenreptrace.h"
+
+// ======== LOCAL FUNCTIONS =========
+
+// ======== MEMBER FUNCTIONS ========
+
+CCenRepAttributesNonMasked* CCenRepAttributesNonMasked::NewL(
+ MCFContextInterface& aCF,
+ CCFContextSourceSettingArray& aSettings )
+ {
+ FUNC_LOG;
+
+ CCenRepAttributesNonMasked* self = CCenRepAttributesNonMasked::NewLC(
+ aCF,
+ aSettings );
+ CleanupStack::Pop( self );
+
+ return self;
+ }
+
+CCenRepAttributesNonMasked* CCenRepAttributesNonMasked::NewLC(
+ MCFContextInterface& aCF,
+ CCFContextSourceSettingArray& aSettings )
+ {
+ FUNC_LOG;
+
+ CCenRepAttributesNonMasked* self =
+ new( ELeave ) CCenRepAttributesNonMasked( aCF, aSettings );
+ CleanupStack::PushL( self );
+ self->ConstructL();
+
+ return self;
+ }
+
+CCenRepAttributesNonMasked::~CCenRepAttributesNonMasked()
+ {
+ FUNC_LOG;
+ }
+
+CCenRepAttributesNonMasked::CCenRepAttributesNonMasked(
+ MCFContextInterface& aCF,
+ CCFContextSourceSettingArray& aSettings ) :
+ CCenRepAttributes ( aCF, aSettings )
+ {
+ FUNC_LOG;
+ }
+
+void CCenRepAttributesNonMasked::ConstructL()
+ {
+ FUNC_LOG;
+
+ iContext = CCFContextObject::NewL();
+ }
+
+//----------------------------------------------------------------------------
+// CCenRepAttributesNonMasked::UpdateContextL
+//----------------------------------------------------------------------------
+//
+void CCenRepAttributesNonMasked::UpdateContextL( const TInt aKeyValue )
+ {
+ FUNC_LOG;
+
+ TInt valueValue = 0;
+ TPtrC value( KNullDesC );
+ TPtrC key( KNullDesC );
+
+ TPtrC conTypePtr ( KNullDesC );
+ TPtrC conSourcePtr ( KNullDesC );
+ TPtrC conValuePtr ( KNullDesC );
+
+ for( TInt i = 0; i < iParamCount; i++ )
+ {
+ TBool publishOk( ETrue );
+ const RKeyValueArray& paramAttr = iParamArray[i]->Attributes();
+ TInt paramAttrCount = paramAttr.Count();
+ for( TInt j = 0; j < paramAttrCount; j++ )
+ {
+ key.Set( paramAttr[j]->Key() );
+ value.Set( paramAttr[j]->Value() );
+
+ if ( value.Length() <= 0 )
+ {
+ publishOk = EFalse;
+ }
+
+ // Check Value
+ if ( key.CompareF( KValue ) == KErrNone )
+ {
+ TInt err = ConvertToInt( value, valueValue );
+ }
+
+ // Check ContextSource
+ else if ( key.CompareF( KContextSource ) == KErrNone )
+ {
+ conSourcePtr.Set( value );
+ }
+
+ // Check ContextType
+ else if ( key.CompareF( KContextType ) == KErrNone )
+ {
+ conTypePtr.Set( value);
+ }
+
+ // Check ContextValue
+ else if ( key.CompareF( KContextValue ) == KErrNone )
+ {
+ conValuePtr.Set( value );
+ }
+ }
+
+ if ( aKeyValue == valueValue )
+ {
+ iContext->SetSourceL( conSourcePtr );
+ iContext->SetTypeL( conTypePtr );
+ iContext->SetValueL( conValuePtr );
+
+ if ( publishOk )
+ {
+ PublishContext();
+ }
+ }
+ }
+ }