startupservices/Startup/src/StartupMediatorObserver.cpp
branchRCL_3
changeset 20 c2c61fdca848
parent 0 2e3d3ce01487
equal deleted inserted replaced
19:924385140d98 20:c2c61fdca848
       
     1 /*
       
     2 * Copyright (c) 2005-2008 Nokia Corporation and/or its subsidiary(-ies). 
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:  Implementation of CStartupMediatorObserver class
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #include <MediatorDomainUIDs.h>
       
    20 
       
    21 #include "StartupMediatorObserver.h"
       
    22 #include "StartupAppUi.h"
       
    23 #include "startupdomainpskeys.h"
       
    24 
       
    25 // ================= MEMBER FUNCTIONS =======================
       
    26 
       
    27 // ----------------------------------------------------
       
    28 // CStartupMediatorObserver::ConstructL()
       
    29 // ----------------------------------------------------
       
    30 void CStartupMediatorObserver::ConstructL()
       
    31     {
       
    32     TRACES("CStartupMediatorObserver::ConstructL()");
       
    33 
       
    34     TRACES("CStartupMediatorObserver::ConstructL(): iCommandInitiator");
       
    35     iCommandInitiator = CMediatorCommandInitiator::NewL(this);
       
    36 
       
    37     TRACES("CStartupMediatorObserver::ConstructL(): iEventProvider");
       
    38     iEventProvider = CMediatorEventProvider::NewL();
       
    39 
       
    40     TRACES("CStartupMediatorObserver::ConstructL(): Register event: EMsgWelcomeImageEvent ");
       
    41     iEventProvider->RegisterEvent( KMediatorSecondaryDisplayDomain,
       
    42                                    SecondaryDisplay::KCatStartup,
       
    43                                    SecondaryDisplay::EMsgWelcomeImageEvent,
       
    44                                    TVersion(0,0,0),
       
    45                                    ECapabilitySwEvent );
       
    46 
       
    47     TRACES("CStartupMediatorObserver::ConstructL(): Register event: EMsgStartupEvent ");
       
    48     iEventProvider->RegisterEvent( KMediatorSecondaryDisplayDomain,
       
    49                                    SecondaryDisplay::KCatStartup,
       
    50                                    SecondaryDisplay::EMsgStartupEvent,
       
    51                                    TVersion(0,0,0),
       
    52                                    ECapabilitySwEvent );
       
    53 
       
    54     TRACES("CStartupMediatorObserver::ConstructL(): End");
       
    55     }
       
    56 
       
    57 // ----------------------------------------------------
       
    58 // CStartupMediatorObserver::NewL( CStartupAppUi* aStartupAppUi )
       
    59 // ----------------------------------------------------
       
    60 CStartupMediatorObserver* CStartupMediatorObserver::NewL( CStartupAppUi* aStartupAppUi )
       
    61     {
       
    62     TRACES("CStartupMediatorObserver::NewL()");
       
    63     CStartupMediatorObserver* self = new (ELeave) CStartupMediatorObserver( aStartupAppUi );
       
    64 
       
    65     CleanupStack::PushL( self );
       
    66     self->ConstructL();
       
    67     CleanupStack::Pop(); // self
       
    68 
       
    69     TRACES("CStartupMediatorObserver::NewL(): End");
       
    70     return self;
       
    71     }
       
    72 
       
    73 // ----------------------------------------------------
       
    74 // CStartupMediatorObserver::CStartupMediatorObserver( CStartupAppUi* aStartupAppUi )
       
    75 // C++ default constructor can NOT contain any code, that
       
    76 // might leave.
       
    77 // ----------------------------------------------------
       
    78 CStartupMediatorObserver::CStartupMediatorObserver( CStartupAppUi* aStartupAppUi ) :
       
    79     iStartupAppUi( aStartupAppUi ),
       
    80     iSyncData( NULL )
       
    81     {
       
    82     TRACES("CStartupMediatorObserver::CStartupMediatorObserver()");
       
    83     }
       
    84 
       
    85 // ----------------------------------------------------
       
    86 // CStartupMediatorObserver::~CStartupMediatorObserver()
       
    87 // ----------------------------------------------------
       
    88 CStartupMediatorObserver::~CStartupMediatorObserver()
       
    89     {
       
    90     TRACES("CStartupMediatorObserver::~CStartupMediatorObserver()");
       
    91     delete iCommandInitiator;
       
    92     delete iEventProvider;
       
    93     TRACES("CStartupMediatorObserver::~CStartupMediatorObserver(): End");
       
    94     }
       
    95 
       
    96 // ---------------------------------------------------------
       
    97 //
       
    98 // ---------------------------------------------------------
       
    99 void CStartupMediatorObserver::IssueCommand(TInt aCommandId, TInt aData)
       
   100     {
       
   101     TRACES("CStartupMediatorObserver::IssueCommand()");
       
   102     TRACES1("CStartupMediatorObserver::IssueCommand(): aCommandId %d", aCommandId);
       
   103     TRACES1("CStartupMediatorObserver::IssueCommand(): aData:     %d", aData);
       
   104     if (aCommandId == SecondaryDisplay::ECmdStartupSync)
       
   105         {
       
   106         iSyncData = aData;
       
   107         }
       
   108 
       
   109     TPckgBuf<TInt> data( aData );
       
   110     iCommandInitiator->IssueCommand( KMediatorSecondaryDisplayDomain,
       
   111                                      SecondaryDisplay::KCatStartup,
       
   112                                      aCommandId,
       
   113                                      TVersion(0,0,0),
       
   114                                      data);
       
   115 
       
   116     TRACES("CStartupMediatorObserver::IssueCommand(): End");
       
   117     }
       
   118 
       
   119 // ---------------------------------------------------------
       
   120 //
       
   121 // ---------------------------------------------------------
       
   122 void CStartupMediatorObserver::CommandResponseL( TUid /*aDomain*/,
       
   123                                                  TUid /*aCategory*/,
       
   124                                                  TInt aCommandId,
       
   125                                                  TInt /*aStatus*/,
       
   126                                                  const TDesC8& /*aData*/ )
       
   127     {
       
   128     TRACES("CStartupMediatorObserver::CommandResponseL()");
       
   129     if (aCommandId == SecondaryDisplay::ECmdStartupSync)
       
   130         {
       
   131 #ifndef RD_STARTUP_ANIMATION_CUSTOMIZATION
       
   132         if ( iSyncData == SecondaryDisplay::EStartWelcomeAnimation )
       
   133             {
       
   134             TRACES("CStartupMediatorObserver::CommandResponseL(): EStartWelcomeAnimation");
       
   135             iStartupAppUi->CoverUIWelcomeAnimationSyncOKL();
       
   136             }
       
   137         else if ( iSyncData == SecondaryDisplay::EStartOperatorAnimation )
       
   138             {
       
   139             TRACES("CStartupMediatorObserver::CommandResponseL(): EStartOperatorAnimation");
       
   140             iStartupAppUi->CoverUIOperatorAnimationSyncOKL();
       
   141             }
       
   142         else
       
   143 #endif // RD_STARTUP_ANIMATION_CUSTOMIZATION
       
   144         if ( iSyncData == SecondaryDisplay::EStartStartupReady )
       
   145             {
       
   146             TRACES("CStartupMediatorObserver::CommandResponseL(): EStartStartupReady");
       
   147             iStartupAppUi->CoverUIStartupReadySyncOKL();
       
   148             }
       
   149         else
       
   150             {
       
   151             TRACES("CStartupMediatorObserver::CommandResponseL(): Unsupported command");
       
   152             }
       
   153         }
       
   154 
       
   155     TRACES("CStartupMediatorObserver::CommandResponseL(): End");
       
   156     }
       
   157 
       
   158 // ---------------------------------------------------------
       
   159 //
       
   160 // ---------------------------------------------------------
       
   161 void CStartupMediatorObserver::RaiseEvent( TUid aCategory,
       
   162                                            TInt aEventId,
       
   163                                            const TDesC8& aData )
       
   164     {
       
   165     TRACES("CStartupMediatorObserver::RaiseEvent()");
       
   166     TRACES1("CStartupMediatorObserver::RaiseEvent(): domain  :%d", KMediatorSecondaryDisplayDomain);
       
   167     TRACES1("CStartupMediatorObserver::RaiseEvent(): category:%d", aCategory);
       
   168     TRACES1("CStartupMediatorObserver::RaiseEvent(): event id:%d", aEventId);
       
   169     TRACES1("CStartupMediatorObserver::RaiseEvent(): data    :%S", &aData);
       
   170     TInt err = iEventProvider->RaiseEvent( KMediatorSecondaryDisplayDomain,
       
   171                                            aCategory,
       
   172                                            aEventId,
       
   173                                            TVersion(0,0,0),
       
   174                                            aData );
       
   175     if ( err != KErrNone )
       
   176         {
       
   177         TRACES1("CStartupMediatorObserver::RaiseEvent(): Error raising event: err = d", err);
       
   178         }
       
   179     TRACES("CStartupMediatorObserver::RaiseEvent(): End");
       
   180     }
       
   181 
       
   182 //  End of File