satengine/SatServer/Engine/src/CSatCommandHandler.cpp
changeset 46 2fa1fa551b0b
parent 42 35488577e233
child 48 78df25012fda
--- a/satengine/SatServer/Engine/src/CSatCommandHandler.cpp	Mon Aug 23 15:50:31 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,336 +0,0 @@
-/*
-* Copyright (c) 2002-2010 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:  Base class for handling SAT commands.
-*
-*/
-
-
-
-// INCLUDE FILES
-#include    <ecom.h>
-#include    "MSatSystemState.h"
-#include    "CSatCommandHandler.h"
-#include    "MSatUtils.h"
-#include    "MSatApi.h"
-#include    "EnginePanic.h"
-#include    "MSatSUiClientHandler.h"
-#include    "SatLog.h"
-
-// Small delay for giving UI time to launch before starting to handle
-// pending command
-const TInt KTimerDelay =  100000;
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::CSatCommandHandler
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSatCommandHandler::CSatCommandHandler() :
-    CActive( EPriorityStandard )
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::CSatCommandHandler calling" )
-
-    CActiveScheduler::Add( this );
-
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::CSatCommandHandler exiting" )
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::BaseConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSatCommandHandler::BaseConstructL( MSatUtils* aPtr )
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::BaseConstructL calling" )
-
-    __ASSERT_ALWAYS( aPtr, PanicSatEngine( ESatEngineNullPointer ) );
-    iUtils = aPtr;
-
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::BaseConstructL exiting" )
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CSatCommandHandler* CSatCommandHandler::NewL(
-    const TUid& aImplUid,
-    MSatUtils* aUtils )
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::NewL calling" )
-
-    __ASSERT_ALWAYS( aUtils, PanicSatEngine( ESatEngineNullPointer ) );
-
-    TAny* ptr = REComSession::CreateImplementationL( aImplUid,
-        _FOFF( CSatCommandHandler, iDtorIDKey ), aUtils );
-
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::NewL exiting" )
-    return reinterpret_cast<CSatCommandHandler*>( ptr );
-    }
-
-// Destructor
-EXPORT_C CSatCommandHandler::~CSatCommandHandler()
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::~CSatCommandHandler calling" )
-
-    iUtils = NULL;
-    REComSession::DestroyedImplementation( iDtorIDKey );
-
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::~CSatCommandHandler exiting" )
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::Start
-// Starts the waiting of SAT command, if not already active.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSatCommandHandler::Start()
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::Start calling" )
-
-    if ( !IsActive() )
-        {
-        LOG( DETAILED, "SATENGINE: CSatCommandHandler::Start set active" )
-        // Child class issues the request.
-        IssueUSATRequest( iStatus );
-        SetActive();
-
-        // Not executing
-        iIsExecuting = EFalse;
-        iWaitingUiLaunch = EFalse;
-        }
-
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::Start exiting" )
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::DoHandleCommand
-// Handles the SAT command, which has been notified from USAT api.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSatCommandHandler::DoHandleCommand()
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::DoHandleCommand calling" )
-
-    if ( CommandAllowed() )
-        {
-        iUtils->NotifyEvent( MSatUtils::EDestroySimSessionEndTimer );
-        if ( NeedUiSession() )
-            {
-            // If ui session is not availabe, SATUI has to be
-            // launched.
-            if ( NULL == iUtils->SatUiHandler().UiSession() )
-                {
-                LOG( SIMPLE, "SATENGINE: CSatCommandHandler::DoHandleCommand \
-                     uisession not available" )
-                TRAPD( err, iUtils->RegisterL(
-                    this, MSatUtils::ESatUiLaunched );
-
-                    // Try to launch the ui client.
-                    iUtils->SatUiHandler().LaunchSatUiL();
-                    ); // End of TRAPD
-
-                if ( KErrNone != err )
-                    {
-                    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::\
-                    DoHandleCommand KErrNone != err" )
-                    // Ui launch failed, unregister event
-                    iUtils->UnregisterEvent( this, MSatUtils::ESatUiLaunched );
-
-                    // Notify derived class that ui launch failed.
-                    UiLaunchFailed();
-                    }
-                else 
-                    { 
-                    LOG( SIMPLE,  
-                    "SATENGINE: CSatCommandHandler::DoHandleCommand iWaitingUiLaunch")
-                    iWaitingUiLaunch = ETrue; 
-                    }
-                }
-            else
-                {
-                LOG( SIMPLE, "SATENGINE: CSatCommandHandler::DoHandleCommand \
-                     uisession available" )
-                // client session is available handle the command.
-                HandleCommand();
-                }
-            }
-        else
-            {
-            LOG( SIMPLE, "SATENGINE: CSatCommandHandler::DoHandleCommand \
-                 don't need uisession" )
-            // Command does not need ui client, so handle the command.
-            HandleCommand();
-            }
-        }
-
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::DoHandleCommand exiting" )
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::ClientResponse
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSatCommandHandler::ClientResponse()
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::ClientResponse panic" )
-    PanicSatEngine( ESatUnexpectedHandleUiResponseCall );
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::Event
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSatCommandHandler::Event( TInt aEvent )
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::Event calling" )
-
-    if ( MSatUtils::ESatUiLaunched == aEvent )
-        {
-        iUtils->UnregisterEvent( this, MSatUtils::ESatUiLaunched );
-        // Check is command still waiting UI to start
-        if ( !IsActive() )
-            {
-            LOG( SIMPLE, "SATENGINE: CSatCommandHandler::Event waiting UI" )
-            // Start timer to give UI some time to execute
-            iWaitingUiLaunch = ETrue;
-            iDelayTimer.CreateLocal();
-            iDelayTimer.After( iStatus, KTimerDelay );
-            SetActive();
-            }
-        else
-            {
-            LOG( SIMPLE, "SATENGINE: CSatCommandHandler::Event close UI" )
-            // UI is launched but command is not executing. UI must be closed.
-            iUtils->NotifyEvent( MSatUtils::ESessionTerminatedByUser );
-            }
-        }
-
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::Event exiting" )
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::TerminalRsp
-// Sends the terminal response to the SIM and renews the sat request.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSatCommandHandler::TerminalRsp(
-    RSat::TPCmd aPCmd, // Identifies the command sending terminal rsp.
-    const TDesC8& aRsp ) // Data package of the response
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::TerminalRsp calling" )
-
-    iUtils->NotifyEvent( MSatUtils::EDelaySimSessionEnd );
-    iUtils->USatAPI().TerminalRsp( aPCmd, aRsp );
-    Start();
-
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::TerminalRsp exiting" )
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::RunL
-// If request is completed without error, starts handling the command.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSatCommandHandler::RunL()
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::RunL calling" )
-    LOG2( SIMPLE,
-            "SATENGINE:   RunL status: %d", iStatus.Int() )
-    if ( iWaitingUiLaunch )
-        {
-        LOG( NORMAL, "  UI is launched. Starting to handle command" )
-        iWaitingUiLaunch = EFalse;
-        iDelayTimer.Close();
-        HandleCommand();
-        }
-    else if ( KErrNone == iStatus.Int() )
-        {
-        // Executing only, if really executing
-        iIsExecuting = ETrue;
-        DoHandleCommand();
-        }
-    else if ( KErrNotSupported != iStatus.Int() )
-        {        
-        Start();
-        }
-    else
-        {
-        LOG( SIMPLE, "SATENGINE:   Request was unsupported" )
-        }
-
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::RunL exiting" )
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::IsPhoneInIdleState
-// Returns ETrue if using Dummy TSY
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSatCommandHandler::IsPhoneInIdleState()
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::IsPhoneInIdleState calling" )
-    TBool isIdle( EFalse );
-
-    TRAPD( err, ( isIdle = iUtils->SystemState().IsPhoneInIdleStateL() ) );
-
-    if ( KErrNone != err )
-        {
-        LOG( SIMPLE, 
-        "SATENGINE: CSatCommandHandler::IsPhoneInIdleState KErrNone != err" )
-        isIdle = EFalse;
-        }
-
-    LOG2( SIMPLE, "SATENGINE: CSatCommandHandler::IsPhoneInIdleState \
-          exiting, isIdle: %d", isIdle )
-    return isIdle;
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::Panic
-// Gives a panic.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSatCommandHandler::Panic(
-    const TDesC& aCategory, TInt aReason ) const
-    {
-    LOG( SIMPLE, "SATENGINE: CSatCommandHandler::Panic" )
-    User::Panic( aCategory, aReason );
-    }
-
-// -----------------------------------------------------------------------------
-// CSatCommandHandler::IsCommandExecuting
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSatCommandHandler::IsCommandExecuting() const
-    {
-    LOG( DETAILED, "SATENGINE: CSatCommandHandler::IsCommandExecuting" )
-    return iIsExecuting;
-    }
-
-//  End of File