--- a/mmsharing/mmshengine/src/musengsessionmanager.cpp Tue Aug 31 15:12:07 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,186 +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:
-*
-*/
-
-#include "musengsessionmanager.h"
-#include "musenglivesession.h"
-#include "musengclipsession.h"
-#include "musengreceivesession.h"
-#include "musengtwowaysession.h"
-#include "musengtwowayrecvsession.h"
-#include "mussessionproperties.h"
-#include "muspropertywatch.h"
-#include <lcsession.h>
-#include <lcuiprovider.h>
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-CMusEngSessionManager* CMusEngSessionManager::NewL()
- {
- CMusEngSessionManager* self = new( ELeave )CMusEngSessionManager();
- CleanupStack::PushL( self );
- self->ConstructL();
- CleanupStack::Pop( self );
- return self;
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-CMusEngSessionManager::~CMusEngSessionManager()
- {
- delete iUseCaseWatch;
- delete iSession;
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-CMusEngSessionManager::CMusEngSessionManager()
- {
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusEngSessionManager::ConstructL()
- {
- TInt useCase;
- User::LeaveIfError( RProperty::Get( NMusSessionApi::KCategoryUid,
- NMusSessionApi::KUseCase,
- useCase ) );
- iSession = CreateMusSessionL(
- static_cast< MultimediaSharing::TMusUseCase >( useCase ) );
-
- iUseCaseWatch = CMusPropertyWatch::NewL(
- *this, NMusSessionApi::KCategoryUid, NMusSessionApi::KUseCase );
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-MLcSession& CMusEngSessionManager::Session()
- {
- return *iSession;
- }
-
-// -----------------------------------------------------------------------------
-// If usecase changes while background startup is active, client is
-// notified about change by bringing it to foreground and changing current
-// active session. Old session is terminated immediately after notification.
-// -----------------------------------------------------------------------------
-//
-void CMusEngSessionManager::PropertyChanged(
- const TUint /*aKey*/,
- const TInt aValue )
- {
- MUS_LOG1( "mus: [ENGINE] -> CMusEngSessionManager::PropertyChanged, val:%d",
- aValue )
-
- if ( iSession->IsBackgroundStartup() && aValue != iCurrentUseCase )
- {
- MUS_LOG( "mus: [ENGINE] Usecase changed!" )
- MLcUiProvider* uiProvider = iSession->LcUiProvider();
- if ( uiProvider )
- {
- CMusEngMceSession* newSession = NULL;
- TRAP_IGNORE( newSession = CreateMusSessionL(
- static_cast< MultimediaSharing::TMusUseCase >( aValue ) ) );
- if ( newSession )
- {
- MUS_LOG( "mus: [ENGINE] Set new active session" )
- CMusEngMceSession* oldSession = iSession;
- iSession = newSession;
- iSession->SetForegroundStatus( ETrue );
- uiProvider->HandleForegroundStatus( ETrue );
- delete oldSession;
- }
- }
- }
-
- MUS_LOG( "mus: [ENGINE] <- CMusEngSessionManager::PropertyChanged" )
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-void CMusEngSessionManager::HandlePropertyError( const TInt /*aReason*/ )
- {
- // NOP
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-TBool CMusEngSessionManager::IsFeatureSupported( TLcFeature aLcFeature )
- {
- return ( aLcFeature == ELcShowInvitingNote ||
- aLcFeature == ELcShowWaitingNote ||
- aLcFeature == ELcShowAcceptQuery );
- }
-
-// -----------------------------------------------------------------------------
-//
-// -----------------------------------------------------------------------------
-//
-CMusEngMceSession* CMusEngSessionManager::CreateMusSessionL(
- MultimediaSharing::TMusUseCase aUseCase )
- {
- CMusEngMceSession* session = NULL;
- switch ( aUseCase )
- {
- case MultimediaSharing::EMusLiveVideo:
- {
- session = CMusEngLiveSession::NewL();
- break;
- }
- case MultimediaSharing::EMusClipVideo:
- {
- session = CMusEngClipSession::NewL();
- break;
- }
- case MultimediaSharing::EMusReceive:
- {
- session = CMusEngReceiveSession::NewL();
- break;
- }
- case MultimediaSharing::EMusTwoWayVideo:
- {
- session = CMusEngTwoWaySession::NewL();
- break;
- }
- case MultimediaSharing::EMusReceiveTwoWayVideo:
- {
- session = CMusEngTwoWayRecvSession::NewL();
- break;
- }
- default:
- User::Leave( KErrNotSupported );
- break;
- }
- iCurrentUseCase = aUseCase;
- return session;
- }
-
-// End of File