--- a/devicediagnosticsfw/diagframework/inc/diagexecplanentryimpltest.h Thu Aug 19 10:44:50 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,254 +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: Class declaration for CDiagExecPlanEntryImplTest
-*
-*/
-
-
-#ifndef DIAGEXECPLANENTRYIMPLTEST_H
-#define DIAGEXECPLANENTRYIMPLTEST_H
-
-// SYSTEM INCLUDE FILES
-#include <DiagResultsDatabaseItem.h> // CDiagResultsDatabaseItem::TResult
-#include <DiagTestObserver.h> // MDiagTestObserver
-#include <DiagTestPlugin.h> // MDiagTestPlugin::TStopReason
-
-// USER INCLUDE FILES
-#include "diagexecplanentryimpl.h" // CDiagExecPlanEntryImpl
-
-// FORWARD DECLARATION
-class MDiagTestPlugin;
-
-/**
-* Diagnostics Plug-in Execution Plan Entry Implementation for test plugin
-*
-* This class implements CDiagExecPlanEntryImplTest. It is meant to be private
-* to Diagnostics Framework and not exported.
-*
-* @since S60 v5.0
-*
-*/
-NONSHARABLE_CLASS( CDiagExecPlanEntryImplTest ): public CDiagExecPlanEntryImpl,
- public MDiagTestObserver
- {
-public: // Public constructors and destructors
- /**
- * Symbian two-phased constructor
- *
- * @param aEngine - Diagnostics Engine
- * @param aEngineConig - Engine configuration.
- * @param aObserver - Execution plan entry observer.
- * @param aPlugin - Test plug-in that this plan entry represents.
- * @param aAsDependency - Whether this item is being executed as dependency or not.
- * @param aResult - Initial result.
- *
- * @return a new instance of CDiagExecPlanEntryImplTest
- */
- static CDiagExecPlanEntryImplTest* NewL( MDiagEngineCommon& aEngine,
- const TDiagEngineConfig& aEngineConfig,
- MDiagExecPlanEntryImplObserver& aObserver,
- MDiagTestPlugin& aPlugin,
- TBool aAsDependency,
- CDiagResultsDatabaseItem::TResult aResult );
-
- /**
- * Symbian two-phased constructor.
- * This will put an entry in cleanup stack.
- *
- * @param aEngine - Diagnostics Engine
- * @param aEngineConig - Engine configuration.
- * @param aObserver - Execution plan entry observer.
- * @param aPlugin - Test plug-in that this plan entry represents.
- * @param aAsDependency - Whether this item is being executed as dependency or not.
- * @param aResult - Initial result.
- *
- * @return a new instance of CDiagExecPlanEntryImplTest
- */
- static CDiagExecPlanEntryImplTest* NewLC( MDiagEngineCommon& aEngine,
- const TDiagEngineConfig& aEngineConfig,
- MDiagExecPlanEntryImplObserver& aObserver,
- MDiagTestPlugin& aPlugin,
- TBool aAsDependency,
- CDiagResultsDatabaseItem::TResult aResult );
-
- /**
- * C++ destructor
- */
- virtual ~CDiagExecPlanEntryImplTest();
-
-public: // new public api
- /**
- * Get test result
- * @return Test result enum.
- */
- CDiagResultsDatabaseItem::TResult Result() const;
-
- /**
- * Set test result
- * @param aResult - Test result.
- */
- void SetResult( CDiagResultsDatabaseItem::TResult aResult );
-
- /**
- * Get result database item. If cached value is available, it will use
- * cached value. Otherwise, it will retrieve from database.
- * @return Test result item from database. Ownership is transferred.
- */
- CDiagResultsDatabaseItem* GetLastTestResultL();
-
- /**
- * Get test plugin associated.
- * @return a reference to test plug-in that this entry represents.
- */
- MDiagTestPlugin& TestPlugin();
-
-private: // from CActive
- /*
- * @see CActive::RunL
- */
- virtual void RunL();
-
- /*
- * @see CActive::DoCancel
- */
- virtual void DoCancel();
-
- /*
- * @see CActive::RunError
- */
- virtual TInt RunError( TInt aError );
-
-private: // from CDiagExecPlanEntryImpl
- /**
- * @see CDiagExecPlanEntryImpl::ExecuteL
- */
- virtual void ExecuteL();
-
- /**
- * @see CDiagExecPlanEntryImpl::StopExecutionByWatchdogL
- */
- virtual void StopExecutionByWatchdogL();
-
- /**
- * @see CDiagExecPlanEntryImpl::DoStopExecutionByClientL
- */
- virtual void DoStopExecutionByClientL( MDiagEngineCommon::TCancelMode aCancelMode );
-
- /**
- * @see CDiagExecPlanEntryImpl::SuspendL
- */
- virtual void SuspendL();
-
- /**
- * @see CDiagExecPlanEntryImpl::ResumeL
- */
- virtual void ResumeL();
-
-private: // from MDiagTestObserver
- /**
- * Notify engine of test plug-in execution progress.
- * @see MDiagTestObserver::TestProgressL
- */
- virtual void TestProgressL( const MDiagTestPlugin& aSender,
- TUint aCurrentStep );
-
- /**
- * Notify engine of test plug-in execution completion.
- * @see MDiagTestObserver::TestExecutionCompletedL
- */
- virtual void TestExecutionCompletedL( const MDiagTestPlugin& aSender,
- CDiagResultsDatabaseItem* aTestResult );
-
-
-private: // Private methods
- /**
- * c++ constructor.
- *
- * @param aEngine - Diagnostics Engine
- * @param aEngineConig - Engine configuration.
- * @param aObserver - Execution plan entry observer.
- * @param aPlugin - Test plug-in that this plan entry represents.
- * @param aAsDependency - Whether this item is being executed as dependency or not.
- * @param aResult - Initial result.
- */
- CDiagExecPlanEntryImplTest( MDiagEngineCommon& aEngine,
- const TDiagEngineConfig& aEngineConfig,
- MDiagExecPlanEntryImplObserver& aObserver,
- MDiagTestPlugin& aPlugin,
- TBool aAsDependency,
- CDiagResultsDatabaseItem::TResult aResult );
-
- /**
- * Starts executing test.
- */
- void DoExecuteTestPluginL();
-
- /**
- * Stop test plugin
- */
- CDiagResultsDatabaseItem* StopTestPluginL( MDiagTestPlugin::TStopReason aReason );
-
- /**
- * Handler function for initial delay timer expiration.
- */
- static TInt HandleDelayTimerExpiredL( TAny* aData );
-
- /**
- * Stop initial delay timer.
- */
- void StopInitDelayTimer();
-
- /**
- * Stop all active requests and timers.
- */
- void StopAll();
-
- /**
- * Stops test execution, but test result is not reported.
- */
- void StopExecutionAndIgnoreResultL();
-
- /**
- * Get human readable name for test result. This is meant for debugging
- * purpose only. In non-debug build, it will return empty string.
- */
- static const TDesC& TestResultString( CDiagResultsDatabaseItem::TResult aResult );
-
-
-private: // private data
- /**
- * Test result
- */
- CDiagResultsDatabaseItem::TResult iResult;
-
- /**
- * Plugin test initial delay timer.
- * Ownership - this
- */
- CPeriodic* iInitDelayTimer;
-
- /**
- * Cached test result. This stores test result temporarily, so that database access
- * could be avoided. Currently, cache will remain only for one request after
- * test is completed.
- * Ownership - this
- */
- CDiagResultsDatabaseItem* iCachedResult;
-
- };
-
-#endif // DIAGEXECPLANENTRYIMPLTEST_H
-
-// End of File
-