omadrm/drmplugins/drmudtmodule/src/DrmUdtConn.cpp
changeset 29 3bdc3b853094
parent 23 493788a4a8a4
child 31 908beac81e0a
--- a/omadrm/drmplugins/drmudtmodule/src/DrmUdtConn.cpp	Fri Apr 16 15:14:55 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,311 +0,0 @@
-/*
-* Copyright (c) 2002-2004 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:  ?Description
-*
-*/
-
-
-// INCLUDE FILES
-
-#include "DrmUdtConn.h"
-#include "DrmUdtObserver.h"
-
-#include <CommDbConnPref.h>
-#include <commdb.h>
-#include <cdblen.h>
-#include <es_enum.h>
-
-// #include <ApSelect.h> // for checking APs
-
-#ifdef _DEBUG
-#define LOGGING
-#endif
-
-#define LOGGING
-
-#ifdef LOGGING
-_LIT(KLogDir, "DRM");
-_LIT(KLogName, "UDT.log");
-#include "flogger.h"
-#define LOG(string) \
-	RFileLogger::Write(KLogDir, KLogName, \
-		EFileLoggingModeAppend, string);
-#define LOGHEX(buffer) \
-	RFileLogger::HexDump(KLogDir, KLogName, \
-		EFileLoggingModeAppend, _S(""), _S(""), \
-		buffer.Ptr(), buffer.Length());
-#else
-#define LOG
-#define LOGHEX        
-#endif
-
-// ================= MEMBER FUNCTIONS =======================
-
-// ---------------------------------------------------------
-// CDrmUdtConn::NewL()
-// ---------------------------------------------------------
-//
-CDrmUdtConn* CDrmUdtConn::NewL()
-    {
-    LOG( _L("CDrmUdtConn::NewL") );
-    CDrmUdtConn* conn = new (ELeave) CDrmUdtConn();
-    CleanupStack::PushL( conn );
-    conn->ConstructL();
-    CleanupStack::Pop( conn );
-    return conn;
-    }
-
-// ---------------------------------------------------------
-// CDrmUdtConn::~CDrmUdtConn()
-// ---------------------------------------------------------
-//
-CDrmUdtConn::~CDrmUdtConn()
-    {
-    LOG( _L("CDrmUdtConn::~CDrmUdtConn") );
-    Cancel();
-    iConnection.Close();
-    iSocketServ.Close();
-    }
-
-// ---------------------------------------------------------
-// CDrmUdtConn::ConnectL()
-// ---------------------------------------------------------
-//
-void CDrmUdtConn::ConnectL( TUint32 aIap,
-                            MDrmUdtObserver* aObserver,
-                            TRequestStatus* aStatus )
-    { 
-    LOG( _L("CDrmUdtConn::ConnectL") );
-    
-    iObserver = aObserver;
-    
-    if ( iState == EInit )
-        {
-        // Not connected. Attach to existing connection, or create new one if
-        // allowed.
-        iStatus = KErrGeneral;
-
-        // Make this part atomic by pushing closes on the stack.
-        User::LeaveIfError( iSocketServ.Connect() );
-        CleanupClosePushL<RSocketServ>( iSocketServ );
-        User::LeaveIfError( iConnection.Open( iSocketServ ) );
-        CleanupClosePushL<RConnection>( iConnection );
-                
-        TConnectionInfoBuf connInfo;
-        TUint count;
-        User::LeaveIfError( iConnection.EnumerateConnections( count ) );
-        TUint i;
-        if ( count )
-            {
-            // Select from existing connections. Try to make AP match.
-            for ( i = count; i; i-- )
-                {
-                // Note: GetConnectionInfo expects 1-based index.
-                User::LeaveIfError( iConnection.GetConnectionInfo( i, connInfo ) );
-                if ( aIap == 0 || connInfo().iIapId == aIap )
-                    {
-                    // "Accept any" or AP match. Attach to this one.
-                    break;
-                    }
-                }
-            if ( !i )
-                {
-                // No AP match, select AP with largest index.
-                User::LeaveIfError
-                    ( iConnection.GetConnectionInfo( count, connInfo ) );
-                }
-            User::LeaveIfError
-                ( iConnection.Attach( connInfo, RConnection::EAttachTypeNormal ) );
-            iState = EConnected;
-            iStatus = KErrNone;
-            }
-        else
-            {
-            // No existing connections, create new one.
-#ifdef __WINS__
-            // WINS connection creation does not work if preferences are given.
-            // Defaults are to be used always.
-            iConnection.Start( iStatus );
-#else
-            // Note: the TCommDbConnPref must NOT be stack variable.
-            // It must persist until completion of RConnection::Start().
-            iConnPref.SetDirection( ECommDbConnectionDirectionOutgoing );
-            iConnPref.SetDialogPreference( ECommDbDialogPrefPrompt );
-            iConnPref.SetBearerSet( ECommDbBearerCSD | ECommDbBearerWcdma );
-            // New connection is always created with user-selected AP;
-            // so 0 is used instead of aIap.
-            iConnPref.SetIapId( 0 );
-            iConnection.Start( iConnPref, iStatus );
-#endif
-            if ( iObserver )
-                {
-                iObserver->ConnectionStartedL();
-                }
-
-            iState = EConnecting;
-            SetActive();    // The only path with a real async request.
-            }
-        CleanupStack::Pop( 2 ); // closing iConn and iSockServ
-        // End of atomic part.
-        }
-    else
-        {
-        // Not expecting this to be called in other states.
-        }
-
-    iParentStatus = aStatus;
-    *iParentStatus = KRequestPending;
-
-    if ( !IsActive() )
-        {
-        // Unless we have an outstanding connect request (iConn.Start),
-        // we are done.
-        User::RequestComplete( iParentStatus, iStatus.Int() );
-        iParentStatus = NULL;
-        }
-    }
-
-// ---------------------------------------------------------
-// CDrmUdtConn::Close()
-// ---------------------------------------------------------
-//
-void CDrmUdtConn::Close()
-    {
-    LOG( _L("CDrmUdtConn::Close") );
-    Cancel();
-    iConnection.Close();
-    iSocketServ.Close();
-    iState = EInit;
-    }
-
-// ---------------------------------------------------------
-// CDrmUdtConn::IsConnected()
-// ---------------------------------------------------------
-//
-TBool CDrmUdtConn::IsConnected( TUint32& aIap )
-    {
-    LOG( _L("CDrmUdtConn::IsConnected") );
-    TBool connected( EFalse );
-    if( iState == EConnected )
-        {
-        TBuf<KCommsDbSvrMaxColumnNameLength * 2 + 1> iapId;
-        _LIT( KFormatIapId, "%S\\%S" );
-        TPtrC iap( IAP );
-        TPtrC id( COMMDB_ID );
-        iapId.Format( KFormatIapId, &iap, &id );
-        TInt err = iConnection.GetIntSetting( iapId, aIap );
-        connected = err ? EFalse : ETrue;
-        }
-    return connected;
-    }
-
-// ---------------------------------------------------------
-// CDrmUdtConn::CConnection()
-// ---------------------------------------------------------
-//
-CDrmUdtConn::CDrmUdtConn()
-: CActive( CActive::EPriorityStandard ),
-  iState( EInit )
-    {
-    LOG( _L("CDrmUdtConn::CDrmUdtConn") );
-    CActiveScheduler::Add( this );
-    }
-
-// ---------------------------------------------------------
-// CDrmUdtConn::ConstructL()
-// ---------------------------------------------------------
-//
-void CDrmUdtConn::ConstructL()
-    {
-    LOG( _L("CDrmUdtConn::ConstructL") );
-    /*
-    TUint32 APs( 0 );
-    CCommsDatabase* commsdb = CCommsDatabase::NewL( EDatabaseTypeIAP );
-    CleanupStack::PushL( commsdb );
-    CApSelect* apSel = CApSelect::NewLC (
-        *commsdb,
-        KEApIspTypeAll,
-        EApBearerTypeAll,
-        KEApSortUidAscending );
-    APs = apSel->Count();
-    CleanupStack::PopAndDestroy( 2 );
-    if ( !APs )
-        {
-        // No AP defined
-        User::Leave( KErrRoapGeneral );
-        }
-     */
-    }
-
-// ---------------------------------------------------------
-// CDrmUdtConn::DoCancel()
-// ---------------------------------------------------------
-//
-void CDrmUdtConn::DoCancel()
-    {
-    LOG( _L("CDrmUdtConn::DoCancel") );
-    iConnection.Close();
-    iSocketServ.Close();
-    User::RequestComplete( iParentStatus, KErrCancel );
-    }
-
-// ---------------------------------------------------------
-// CDrmUdtConn::RunL()
-// ---------------------------------------------------------
-//
-void CDrmUdtConn::RunL()
-    {
-    LOG( _L("CDrmUdtConn::RunL") );
-    User::LeaveIfError( iStatus.Int() );    // Handle errors in RunError().
-
-    iState = EConnected;
-    User::RequestComplete( iParentStatus, iStatus.Int() );
-    iParentStatus = NULL;
-    }
-
-// ---------------------------------------------------------
-// CDrmUdtConn::RunError()
-// ---------------------------------------------------------
-//
-TInt CDrmUdtConn::RunError( TInt  /*aError*/ )
-    {
-    LOG( _L("CDrmUdtConn::RunError") );
-    iConnection.Close();
-    iSocketServ.Close();
-    iState = EInit;
-    User::RequestComplete( iParentStatus, iStatus.Int() );
-    iParentStatus = NULL;
-    return KErrNone;
-    }
-
-// ---------------------------------------------------------
-// CRoapConnection::Conn()
-// ---------------------------------------------------------
-//
-RSocketServ& CDrmUdtConn::SocketServ()
-    {
-    LOG( _L("CDrmUdtConn::SocketServ") );
-    return iSocketServ;
-    }
-
-// ---------------------------------------------------------
-// CRoapConnection::Conn()
-// ---------------------------------------------------------
-//
-RConnection& CDrmUdtConn::Conn()
-    {
-    LOG( _L("CDrmUdtConn::Conn") );
-    return iConnection;
-    }
-