stif/StifTFwIf/src/UIEngineEvent.cpp
changeset 36 813b186005b6
parent 30 86a2e675b80a
child 41 838cdffd57ce
--- a/stif/StifTFwIf/src/UIEngineEvent.cpp	Mon Jun 28 15:36:07 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,481 +0,0 @@
-/*
-* Copyright (c) 2009 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: CUIEngineEvent: This object executes test cases 
-* from STIF Test Framework.
-*
-*/
-
-// INCLUDE FILES
-#include <e32base.h>
-#include <e32svr.h>
-#include <stifinternal/UIEngineContainer.h>
-#include "UIEngineEvent.h"
-#include "Logging.h"
-
-
-// EXTERNAL DATA STRUCTURES
-// None
-
-// EXTERNAL FUNCTION PROTOTYPES  
-// None
-
-// CONSTANTS
-// None
-
-// MACROS
-#ifdef LOGGER
-#undef LOGGER
-#endif
-#define LOGGER iUIEngine->iLogger
-
-
-// LOCAL CONSTANTS AND MACROS
-// None
-
-// MODULE DATA STRUCTURES
-// None
-
-// LOCAL FUNCTION PROTOTYPES
-// None
-
-// FORWARD DECLARATIONS
-// None
-
-
-// ==================== LOCAL FUNCTIONS ======================================= 
-// None
-
-// ================= MEMBER FUNCTIONS =========================================
-
-/*
--------------------------------------------------------------------------------
-
-    Class: CUIEngineEvent
-
-    Method: CUIEngineEvent
-
-    Description: Default constructor
-
-    C++ default constructor can NOT contain any code, that
-    might leave.
-
-    Parameters: None
-    
-    Return Values: None
-
-    Errors/Exceptions: None
-
-    Status: Draft
-
--------------------------------------------------------------------------------
-*/
-CUIEngineEvent::CUIEngineEvent( CUIEngine* aUIEngine) :
-    CActive( CActive::EPriorityStandard ),
-    iState( EEventIdle ),
-    iUIEngine( aUIEngine ),
-    iEventPckg( iEvent )
-    {
-    __TRACE( KPrint, ( _L( "CUIEngineEvent::CUIEngineEvent") ) );
-    __ASSERT_ALWAYS( aUIEngine, User::Panic( _L("Null pointer"), KErrGeneral ) );
-
-    CActiveScheduler::Add( this );
-    }
-
-
-/*
--------------------------------------------------------------------------------
-
-    Class: CUIEngineEvent
-
-    Method: ConstructL
-
-    Description: Symbian OS second phase constructor
-
-    Symbian OS default constructor can leave.
-
-    Parameters: None
-
-    Return Values: None
-
-    Errors/Exceptions: Leaves if called Open method returns error
-
-    Status: Approved
-
--------------------------------------------------------------------------------
-*/
-void CUIEngineEvent::ConstructL()
-    {
-
-    }
-
-
-/*
--------------------------------------------------------------------------------
-
-    Class: CUIEngineEvent
-
-    Method: NewL
-
-    Description: Two-phased constructor.
-    
-    Parameters: CUIEngineContainer* CUIEngineContainer: in: Pointer to CUIEngineContainer Interface
-                TTestInfo& aTestInfo: in: Test info
-
-    Return Values: CUIEngineEvent* : Pointer to created runner object
-
-    Errors/Exceptions: Leaves if memory allocation for CUIEngineEvent fails
-                       Leaves if ConstructL leaves
-
-    Status: Draft
-
--------------------------------------------------------------------------------
-*/
-CUIEngineEvent* CUIEngineEvent::NewL( CUIEngine* aUIEngine )
-    {
-    CUIEngineEvent* self =  
-        new ( ELeave ) CUIEngineEvent( aUIEngine );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop();
-    return self;
-    }
-
-
-/*
--------------------------------------------------------------------------------
-
-    Class: CUIEngineEvent
-
-    Method: ~CUIEngineEvent
-
-    Description: Destructor
-    
-    Parameters: None
-
-    Return Values: None
-
-    Errors/Exceptions: None
-
-    Status: Draft
-
--------------------------------------------------------------------------------
-*/
-CUIEngineEvent::~CUIEngineEvent()
-    {
-    
-    __TRACE( KPrint, ( _L( "CUIEngineEvent::~CUIEngineEvent()") ) );
-    Cancel();
-    
-    if( iState == EEventWaitCompleted )
-        {
-        // Release event
-        Release();
-        }
-    
-    }
-
-
-/*
--------------------------------------------------------------------------------
-
-    Class: CUIEngineEvent
-
-    Method: Request
-
-    Description: Request event.
-
-    Parameters: RTestCase& aTestCase: in: Handle to test case
-                TFullTestResultPckg& aFullTestResultPckg: in: Handle to TFullTestResultPckg
-
-    Return Values: None
-
-    Errors/Exceptions: None
-
-    Status: Draft
-
--------------------------------------------------------------------------------
-*/
-TInt CUIEngineEvent::Request( TDesC& aEventName, 
-                               TUint32 aMaster, 
-                               TUint32 aSlave )
-    {
-    
-    __TRACE( KPrint, ( _L( "CUIEngineEvent::Request %S"), &aEventName ) );
-    
-    iState = EEventRequested;
-    
-    iMaster = aMaster;
-    iSlave = aSlave; 
-    iEvent.SetType( TEventIf::EReqEvent );
-    iEvent.SetName( aEventName );
-    
-    TRequestStatus status;
-    iUIEngine->iTestEngine.Event( iEventPckg, status ); 
-    User::WaitForRequest( status );
-    
-    if( status.Int() == KErrNone )
-        {
-        // Enable event waiting
-        iState = EEventWait;            
-        iEvent.SetType( TEventIf::EWaitEvent );
-        SetActive();
-        iUIEngine->iTestEngine.Event( iEventPckg, iStatus ); 
-        }
-    return status.Int();
-        
-    }
-    
-/*
--------------------------------------------------------------------------------
-
-    Class: CUIEngineEvent
-
-    Method: Release
-
-    Description: Release event.
-
-    Parameters: RTestCase& aTestCase: in: Handle to test case
-                TFullTestResultPckg& aFullTestResultPckg: in: Handle to TFullTestResultPckg
-
-    Return Values: None
-
-    Errors/Exceptions: None
-
-    Status: Draft
-
--------------------------------------------------------------------------------
-*/
-TInt CUIEngineEvent::Release()
-    {
-    
-    __TRACE( KPrint, ( _L( "CUIEngineEvent::Release %S"), &iEvent.Name() ) );
-    Cancel();
-   
-    TRequestStatus status;
-    // Release event
-    iState = EEventReleased;
-    iEvent.SetType( TEventIf::ERelEvent );
-    iUIEngine->iTestEngine.Event( iEventPckg, status ); 
-    User::WaitForRequest( status ); 
-    
-    return status.Int();
-    
-    }
-    
-
-/*
--------------------------------------------------------------------------------
-
-    Class: CUIEngineEvent
-
-    Method: RunL
-
-    Description: RunL handles completed requests.
-
-    Parameters: None
-
-    Return Values: None
-
-    Errors/Exceptions: Leaves if iStatus is not KErrNone, error is handled in
-                       RunError called by CActiveObject
-
-    Status: Draft
-
--------------------------------------------------------------------------------
-*/
-void CUIEngineEvent::RunL()
-    {
-    
-    __TRACE( KPrint, ( _L( "CUIEngineEvent::RunL") ) );
-
-    // Error handled in RunError
-    User::LeaveIfError ( iStatus.Int() );
-    
-    switch( iState )
-        {
-        case EEventWait:
-            {
-            // Create response 
-            CStifTFwIfProt* resp = CStifTFwIfProt::NewL();
-            CleanupStack::PushL( resp );    
-            
-            resp->CreateL();
-            resp->Append( CStifTFwIfProt::MsgType, CStifTFwIfProt::EMsgResponse );
-            resp->AppendId( iSlave );
-            resp->AppendId( iMaster );
-            resp->Append( CStifTFwIfProt::MsgType, CStifTFwIfProt::EMsgRemote );
-            resp->Append( CStifTFwIfProt::CmdType, CStifTFwIfProt::ECmdRequest );
-            resp->Append( CStifTFwIfProt::EventStatus, 
-                         CStifTFwIfProt::EEventSet );
-            resp->Append( iEvent.Name() );
-            if( iEvent.EventType() == TEventIf::EState )
-                {
-                resp->Append( CStifTFwIfProt::EventStatusParams, 
-                             CStifTFwIfProt::EEventType,
-                             CStifTFwIfProt::EventType, 
-                             TEventIf::EState );
-                } 
-            // Send response
-            iUIEngine->RemoteMsg( NULL, resp->Message() );
-            CleanupStack::PopAndDestroy( resp );    
-            
-            if( iEvent.EventType() == TEventIf::EIndication )
-                {            
-                // Enable indication event waiting again
-                iEvent.SetType( TEventIf::EWaitEvent );
-                SetActive();
-                iUIEngine->iTestEngine.Event( iEventPckg, iStatus ); 
-                }
-            else  // state event, set only once for one request
-                {                
-                iState = EEventWaitCompleted;
-                }
-            }
-            break;
-        case EEventWaitCompleted:
-        case EEventRequested:
-        case EEventReleased:
-        default:
-            __TRACE( KError, ( _L( "CUIEngineEvent::RunL: Illegal state %d"), iState ) );
-            User::Leave( KErrGeneral );
-        }
-    }
-
-/*
--------------------------------------------------------------------------------
-
-    Class: CUIEngineEvent
-
-    Method: DoCancel
-
-    Description: Cancel active request.
-
-    Parameters: None
-
-    Return Values: None
-
-    Errors/Exceptions: None
-
-    Status: Draft
-
--------------------------------------------------------------------------------
-*/
-void CUIEngineEvent::DoCancel()
-    {
-    
-    __TRACE( KPrint, ( _L( "CUIEngineEvent::DoCancel") ) );
-    TRequestStatus status;
-
-    switch( iState )
-        {
-        case EEventWait:
-            // First cancel waiting
-            iEvent.SetType( TEventIf::ECancelWait );
-            iUIEngine->iTestEngine.Event( iEventPckg, status );
-            User::WaitForRequest( status ); 
-            iState = EEventWaitCompleted;
-            break;
-        default:
-            iUIEngine->iTestEngine.CancelAsyncRequest( ETestEngineEvent ); 
-            iState = EEventIdle;
-            break;
-        }
-    
-    }
-
-
-/*
--------------------------------------------------------------------------------
-
-    Class: CUIEngineEvent
-
-    Method: RunError
-
-    Description: Handle errors from STIF TestFramework
-
-    Parameters: TInt aError: in: Symbian OS error: Error code
-    
-    Return Values: TInt KErrNone: Always returned KErrNone
-
-    Errors/Exceptions: None
-
-    Status: Draft
-
--------------------------------------------------------------------------------
-*/
-TInt CUIEngineEvent::RunError( TInt aError )
-    {
-    __TRACE( KPrint, ( _L( "CUIEngineEvent::RunError") ) );
-
-    switch( iState )
-        {
-        case EEventRequested:
-        case EEventWait:
-        case EEventWaitCompleted:
-        case EEventReleased:
-            {
-            // Create response
-            CStifTFwIfProt* resp = NULL; 
-            TRAPD( err, resp = CStifTFwIfProt::NewL(); );
-            if( err != KErrNone )
-                {
-                return KErrNone;
-                }
-
-            resp->CreateL();
-            resp->Append( CStifTFwIfProt::MsgType, CStifTFwIfProt::EMsgResponse );
-            resp->AppendId( iSlave );
-            resp->AppendId( iMaster );
-            resp->Append( CStifTFwIfProt::MsgType, CStifTFwIfProt::EMsgRemote );
-            resp->Append( CStifTFwIfProt::CmdType, CStifTFwIfProt::ECmdRequest );
-            resp->Append( CStifTFwIfProt::EventStatus, 
-                         CStifTFwIfProt::EEventError );
-            resp->Append( iEvent.Name() );
-            resp->Append( CStifTFwIfProt::EventStatusParams, 
-                             CStifTFwIfProt::EEventResult,
-                             aError );
-            
-            // Send response
-            iUIEngine->RemoteMsg( NULL, resp->Message() ); 
-            delete resp;
-            }
-            break;
-        default:
-            __TRACE( KError, ( _L( "CUIEngineEvent::RunError: Illegal state %d"), iState ) );
-            return aError;
-        }
-    
-    return KErrNone;
-    }
-
-
-/*
--------------------------------------------------------------------------------
-
-    DESCRIPTION
-
-    CActiveTimer: This object prints running seconds to console screen.
-
--------------------------------------------------------------------------------
-*/
-
-// ================= MEMBER FUNCTIONS =========================================
-
-
-
-
-// ================= OTHER EXPORTED FUNCTIONS ================================= 
-// None
-
-// End of File