cellular/telephonysettings/src/PsetTelephony.cpp
changeset 46 2fa1fa551b0b
parent 42 35488577e233
child 48 78df25012fda
--- a/cellular/telephonysettings/src/PsetTelephony.cpp	Mon Aug 23 15:50:31 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,275 +0,0 @@
-/*
-* Copyright (c) 2002 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:  ETEL connection and line opening class.
-*
-*
-*/
-
-
-// INCLUDE FILES
-#include <etelmm.h>
-#include <e32svr.h>
-#include <mmtsy_names.h>
-#include "psetconstants.h" 
-#include "psettelephony.h" 
-#include "phonesettingslogger.h" 
-
-//  MEMBER FUNCTIONS
-// ---------------------------------------------------------------------------
-// 
-//  First phase constructor
-// 
-// ---------------------------------------------------------------------------
-//
-CPsetTelephony* CPsetTelephony::NewL( 
-    RMobilePhone& aPhone, const TDesC* aTsyName )
-    {
-    CPsetTelephony* self = new ( ELeave ) CPsetTelephony( aPhone );
-    CleanupStack::PushL( self );
-    self->ConstructL( aTsyName );
-    CleanupStack::Pop();
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// 
-//  Destructor
-// 
-// ---------------------------------------------------------------------------
-//
-CPsetTelephony::~CPsetTelephony()
-    {
-    if ( iOwnConnection )
-        {
-        if ( iPhone )
-            {
-            iPhone->Close();
-            }
-        
-        /*****************************************************
-        *    Series 60 Customer / ETel
-        *    Series 60  ETel API
-        *****************************************************/
-        /*****************************************************
-        *    Series 60 Customer / TSY
-        *    Needs customer TSY implementation
-        *****************************************************/
-        if ( iTelServer )
-            {
-            iTelServer->UnloadPhoneModule( iTsyName );
-            iTelServer->Close();
-            }
-        delete iTelServer;
-        iTelServer = NULL;
-        delete iPhone;
-        iPhone = NULL;
-        }
-    } 
-
-// ---------------------------------------------------------------------------
-// 
-//  Constructor.
-// 
-// ---------------------------------------------------------------------------
-//
-void CPsetTelephony::ConstructL( const TDesC* aTsyName )                   
-    {
-    User::LeaveIfError( ConnectToEtelL( aTsyName ) );
-    iOwnConnection = ETrue;
-    }
-
-// ---------------------------------------------------------------------------
-// 
-// Connects to ETel server and loads TSY module, then opens phone object
-// if phone(s) found.
-// 
-// ---------------------------------------------------------------------------
-TInt CPsetTelephony::ConnectToEtelL( const TDesC* aTsyName )
-    {
-    __PHSLOGSTRING("[PHS]--> CPsetTelephony::ConnectToEtelL");
-    if ( aTsyName )
-        {
-        iTsyName= *aTsyName; // use specific tsy name
-        }
-    else
-        {
-        iTsyName = KMmTsyModuleName; // use default tsy name
-        }
-    
-    iTelServer = new ( ELeave ) RTelServer;    
-    iPhone = new ( ELeave ) RMobilePhone;
-    TInt err = KErrNone;
-    
-    for ( TInt a = 0 ; a < KPSetRetryCount ; a++ )
-        {
-        err = iTelServer->Connect();
-        
-        if ( err == KErrNone )
-            {
-            break;
-            }
-        
-        User::After( KPSetRetryTimeout );
-        }
-    
-    User::LeaveIfError( err );
-    
-    /*****************************************************
-    *    Series 60 Customer / ETel
-    *    Series 60  ETel API
-    *****************************************************/
-    /*****************************************************
-    *    Series 60 Customer / TSY
-    *    Needs customer TSY implementation
-    *****************************************************/
-    err = iTelServer->LoadPhoneModule( iTsyName );
-    
-    if ( err == KErrNone )
-        {
-        iTelServer->SetExtendedErrorGranularity( RTelServer::EErrorExtended );
-        
-        RTelServer::TPhoneInfo phoneInfo;
-        err = iTelServer->GetPhoneInfo( 0, phoneInfo );  
-        if ( err == KErrNone )
-            {
-            // open phone subsession
-            err = iPhone->Open( *iTelServer, phoneInfo.iName ); 
-            }
-        }
-
-    __PHSLOGSTRING("[PHS] <--CPsetTelephony::ConnectToEtelL");
-    return err;
-    }
-
-// ---------------------------------------------------------------------------
-// 
-// Checks that correct line for diverting is open. If not, lines
-// are gone through and when one with correct capabilities is found,
-// it is opened.
-// 
-// ---------------------------------------------------------------------------
-//
-void CPsetTelephony::CheckLineModeL( const TServiceGroup aServiceGroup,
-                                    RMobilePhone* aPhone, RMobileLine* aLine)
-    {
-    __PHSLOGSTRING("[PHS]--> CPsetTelephony::CheckLineModeL");
-    if (!aPhone || !aLine)
-        {
-        User::Leave(KErrArgument);
-        }
-    
-    RLine::TCaps lineCaps;    
-    lineCaps.iFlags = 0;
-    TBool oldMode( EFalse ); // if true, another line must be opened    
-    
-    if ( aLine->SubSessionHandle() == 0 )
-        {
-        oldMode = ETrue;
-        }
-    else
-        {
-        User::LeaveIfError( aLine->GetCaps( lineCaps ) );
-        }
-
-    TUint32 capsFlags( 0 );
-    capsFlags = SetCapFlagsL( aServiceGroup, oldMode, lineCaps );
-    
-    if ( oldMode )
-        { // open line in right mode according to service group        
-        if ( aLine->SubSessionHandle() )
-            {
-            aLine->Close();        
-            }
-        
-        TInt lines = 0;
-        User::LeaveIfError( aPhone->EnumerateLines( lines ) );
-        //lines is no of lines, to check each line, we need to 
-        // check all lines from 0 to lines-1
-        for (lines--; KPSetNoLinesAvailable < lines; lines-- )
-            {
-            RPhone::TLineInfo lineInfo;
-            User::LeaveIfError( aPhone->GetLineInfo( lines, lineInfo ) );            
-            
-            if ( lineInfo.iLineCapsFlags & capsFlags )
-                {
-                User::LeaveIfError( aLine->Open( *aPhone, lineInfo.iName ) );
-                return;
-                }
-            }        
-        }
-    __PHSLOGSTRING("[PHS] <--CPsetTelephony::CheckLineModeL");
-    }
-// ---------------------------------------------------------------------------
-// 
-// Sets cap flags.
-// 
-// ---------------------------------------------------------------------------
-//
-TUint32 CPsetTelephony::SetCapFlagsL( 
-    const TServiceGroup aServiceGroup, TBool& aMode, RLine::TCaps& aCaps )
-    {
-    __PHSLOGSTRING("[PHS]--> CPsetTelephony::SetCapFlagsL");
-    TUint32 flags(0);
-
-    switch ( aServiceGroup )
-        {
-        case EServiceGroupVoice:
-            __PHSLOGSTRING("[PHS]    CPsetTelephony::SetCapFlagsL: EServiceGroupVoice");
-            // always open voice line even because it could have been another 
-            // ALS line which was open
-            aMode = ETrue;
-            flags |= RLine::KCapsVoice;
-            break;
-        case EServiceGroupData:
-            __PHSLOGSTRING("[PHS]    CPsetTelephony::SetCapFlagsL: EServiceGroupData");
-            if ( !( aCaps.iFlags & RLine::KCapsData ) )
-                {
-                aMode = ETrue;
-                }
-            flags |= RLine::KCapsData;
-            break;
-        case EServiceGroupFax:
-            __PHSLOGSTRING("[PHS]    CPsetTelephony::SetCapFlagsL: EServiceGroupFax");
-            if ( !( aCaps.iFlags & RLine::KCapsFax ) )
-                {
-                aMode = ETrue;
-                }
-            flags |= RLine::KCapsFax;
-            break;
-        case EServiceGroupAllTeleservices:
-            __PHSLOGSTRING("[PHS]    CPsetTelephony::SetCapFlagsL: EServiceGroupAllTeleservices");
-            aMode = ETrue;
-            flags |= RLine::KCapsData;
-            flags |= RLine::KCapsFax;
-            flags |= RLine::KCapsVoice;
-            break;
-        default:
-            User::Leave( KErrNotSupported );
-        }
-
-    __PHSLOGSTRING("[PHS] <--CPsetTelephony::SetCapFlagsL");
-    return flags;
-    }
-
-// ---------------------------------------------------------------------------
-// 
-// C++ constructor.
-// 
-// ---------------------------------------------------------------------------
-//
-CPsetTelephony::CPsetTelephony
-                ( RMobilePhone& aPhone ) : iPhone ( &aPhone )
-    {
-    }
-//End of file