sl@0: // Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // sl@0: sl@0: sl@0: sl@0: #include "invalidplugin.h" sl@0: #include sl@0: #include "featmgrdebug.h" sl@0: #include "efm_test_consts.h" sl@0: #include sl@0: #include sl@0: sl@0: // Map the interface implementation UIDs to implementation factory functions sl@0: const TImplementationProxy ImplementationTable[] = sl@0: { sl@0: IMPLEMENTATION_PROXY_ENTRY(0x10283708, CFeatMgrInvalidPlugin::NewL), sl@0: }; sl@0: sl@0: // Exported proxy for instantiation method resolution. sl@0: EXPORT_C const TImplementationProxy* ImplementationGroupProxy( TInt& aTableCount ) sl@0: { sl@0: aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy); sl@0: return ImplementationTable; sl@0: } sl@0: sl@0: CFeatMgrInvalidPlugin* CFeatMgrInvalidPlugin::NewL() sl@0: { sl@0: CFeatMgrInvalidPlugin* self = new(ELeave) CFeatMgrInvalidPlugin(); sl@0: CleanupStack::PushL(self); sl@0: self->ConstructL(); sl@0: CleanupStack::Pop(self); sl@0: return self; sl@0: } sl@0: sl@0: CFeatMgrInvalidPlugin::~CFeatMgrInvalidPlugin() sl@0: { sl@0: } sl@0: sl@0: CFeatMgrInvalidPlugin::CFeatMgrInvalidPlugin() sl@0: { sl@0: } sl@0: sl@0: void CFeatMgrInvalidPlugin::ProcessCommandL( const FeatureInfoCommand::TFeatureInfoCmd aCommandId, sl@0: const TUint8 aTransId, sl@0: TDesC8& /*aData*/ ) sl@0: { sl@0: INFO_LOG2( "FeatMgrPlugin: Processing command: 0x%x, TransId: 0x%x", sl@0: aCommandId, aTransId ); sl@0: sl@0: switch ( aCommandId ) sl@0: { sl@0: case FeatureInfoCommand::ELoadFeatureInfoCmdId: sl@0: { sl@0: INFO_LOG( "FeatMgrPlugin: Processed ELoadFeatureInfoCmdId" ); sl@0: User::Leave(KErrNotSupported); sl@0: } sl@0: break; sl@0: case FeatureInfoCommand::ELoadEnhancedFeatureInfoCmdId: sl@0: { sl@0: INFO_LOG( "FeatMgrPlugin: Processed ELoadEnhancedFeatureInfoCmdId" ); sl@0: User::Leave(KErrNotSupported); sl@0: } sl@0: break; sl@0: default: sl@0: { sl@0: INFO_LOG1( "FeatMgrPlugin: Unknown Command: 0x%x", aCommandId ); sl@0: User::Leave(KErrNotSupported); sl@0: } sl@0: break; sl@0: } sl@0: sl@0: TInt retval(KErrNone); sl@0: TInt timeout( 50 ); // microseconds sl@0: sl@0: // create new timer sl@0: sl@0: sl@0: if ( iTimer && !iTimer->IsActive() ) sl@0: { sl@0: delete iTimer; sl@0: iTimer = NULL; sl@0: } sl@0: sl@0: iTimer = CPluginTimer::NewL(timeout, *iResponseCallback, aCommandId, aTransId, retval,this); sl@0: } sl@0: sl@0: sl@0: void CFeatMgrInvalidPlugin::ConstructL() sl@0: { sl@0: } sl@0: sl@0: void CFeatMgrInvalidPlugin::GenericTimerFiredL( sl@0: MFeatureInfoPluginCallback& /*aService*/, sl@0: FeatureInfoCommand::TFeatureInfoCmd /*aCommandId*/, sl@0: TUint8 /*aTransId*/, sl@0: TInt /*aRetVal*/) sl@0: { sl@0: }