diff -r 000000000000 -r 2e3d3ce01487 contextframework/cfw/src/cfserver/cfcontextsourcecmd.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/contextframework/cfw/src/cfserver/cfcontextsourcecmd.cpp Tue Feb 02 10:12:00 2010 +0200 @@ -0,0 +1,123 @@ +/* +* Copyright (c) 2008 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: CCFContextSourceCmd implementation +* +*/ + + +// SYSTEM INCLUDES +#include + +// USER INCLUDES +#include "cfcontextsourcecmd.h" +#include "cfcontextsourcecommandinterface.h" +#include "cftrace.h" + +// ======== MEMBER FUNCTIONS ======== + +// --------------------------------------------------------------------------- +// C++ constructor. +// --------------------------------------------------------------------------- +// +CCFContextSourceCmd::CCFContextSourceCmd( + MCFContextSourceCommand& aSourceCommandHandler ) + : iContextSourceCommandHandler( aSourceCommandHandler ) + { + FUNC_LOG; + } + +// --------------------------------------------------------------------------- +// Symbian 2nd phase constructor. +// --------------------------------------------------------------------------- +// +void CCFContextSourceCmd::ConstructL( const CCFContextSourceCommand& aCommand ) + { + FUNC_LOG; + + iCommand = aCommand.CloneL(); // Make a copy of the command. + } + +// --------------------------------------------------------------------------- +// Symbian two phased constructor. +// --------------------------------------------------------------------------- +// +CCFContextSourceCmd* CCFContextSourceCmd::NewL( + MCFContextSourceCommand& aSourceCommandHandler, + const CCFContextSourceCommand& aCommand ) + { + FUNC_LOG; + + CCFContextSourceCmd* self = CCFContextSourceCmd::NewLC( + aSourceCommandHandler, + aCommand ); + CleanupStack::Pop( self ); + return self; + } + +// --------------------------------------------------------------------------- +// Symbian two phased constructor. +// Leaves pointer in the cleanup stack. +// --------------------------------------------------------------------------- +// +CCFContextSourceCmd* CCFContextSourceCmd::NewLC( + MCFContextSourceCommand& aSourceCommandHandler, + const CCFContextSourceCommand& aCommand ) + { + FUNC_LOG; + + CCFContextSourceCmd* self + = new( ELeave ) CCFContextSourceCmd( aSourceCommandHandler ); + CleanupStack::PushL( self ); + self->ConstructL( aCommand ); + return self; + } + +// --------------------------------------------------------------------------- +// C++ destructor. +// --------------------------------------------------------------------------- +// +CCFContextSourceCmd::~CCFContextSourceCmd() + { + FUNC_LOG; + + delete iCommand; + } + + +// --------------------------------------------------------------------------- +// CCFContextSourceCmd::ExecuteL +// --------------------------------------------------------------------------- +// +void CCFContextSourceCmd::ExecuteL() + { + FUNC_LOG; + + iContextSourceCommandHandler.HandleCommandL( *iCommand ); + } + +// --------------------------------------------------------------------------- +// CCFContextSourceCmd::LogError +// --------------------------------------------------------------------------- +// +void CCFContextSourceCmd::LogError( TInt aError ) + { + FUNC_LOG; + + if( aError != KErrNone ) + { + ERROR( aError, "CCFContextSourceCmd::LogError - MCFContextSourceCommand::HandleCommandL() execution failed." ); + } + } + +// End of file