bearermanagement/mpm/src/mpmserver.cpp
branchRCL_3
changeset 65 14754bf06654
parent 62 bb1f80fb7db2
child 69 cf1b3ddbe9a1
equal deleted inserted replaced
62:bb1f80fb7db2 65:14754bf06654
   796         // Check if IAP Id matches
   796         // Check if IAP Id matches
   797         // 
   797         // 
   798         if ( iActiveBMConns[i].iConnInfo.iState == EStarting ||
   798         if ( iActiveBMConns[i].iConnInfo.iState == EStarting ||
   799              iActiveBMConns[i].iConnInfo.iState == EStarted )
   799              iActiveBMConns[i].iConnInfo.iState == EStarted )
   800             {
   800             {
   801             if ( aCdbAccess->CheckWlanL( iActiveBMConns[i].iConnInfo.iIapId ) != ENotWlanIap )
   801             TWlanIapType iapType( ENotWlanIap );             	
       
   802             TRAPD ( leave, iapType = aCdbAccess->CheckWlanL( iActiveBMConns[i].iConnInfo.iIapId ) )             	
       
   803             if ( ( leave == KErrNone ) && ( iapType != ENotWlanIap ) )
   802                 {
   804                 {
   803                 stopLoop = ETrue;
   805                 stopLoop = ETrue;
   804                 iapId = iActiveBMConns[i].iConnInfo.iIapId;
   806                 iapId = iActiveBMConns[i].iConnInfo.iIapId;
   805                 MPMLOGSTRING2( "CMPMServer::IsWlanConnectionStartedL, found wlan iap %d", iapId )
   807                 MPMLOGSTRING2( "CMPMServer::IsWlanConnectionStartedL, found wlan iap %d", iapId )
   806                 }
   808                 }
  1959     CMPMServer* self = static_cast<CMPMServer*>( aUpdater );
  1961     CMPMServer* self = static_cast<CMPMServer*>( aUpdater );
  1960     if ( self )
  1962     if ( self )
  1961         {
  1963         {
  1962         // cancel the periodic object        
  1964         // cancel the periodic object        
  1963         self->iRoamingToWlanPeriodic->Cancel();
  1965         self->iRoamingToWlanPeriodic->Cancel();
  1964         self->StartForcedRoamingToWlanL( self->iConnMonIapInfo );
  1966         TRAPD( error, self->StartForcedRoamingToWlanL( self->iConnMonIapInfo ) )
       
  1967         if ( error )
       
  1968             {        	
       
  1969             MPMLOGSTRING2("CMPMServer::StartForcedRoamingToConnectedWlan error1 = %d, ", error )
       
  1970             return 0;
       
  1971             }
       
  1972             
  1965         // Added also execution of policy based roaming logic because
  1973         // Added also execution of policy based roaming logic because
  1966         // connections that are in EStarting state, when WLAN signal
  1974         // connections that are in EStarting state, when WLAN signal
  1967         // gets weak, would remain in WLAN as long as signal is weak. 
  1975         // gets weak, would remain in WLAN as long as signal is weak. 
  1968         self->StartForcedRoamingFromWlanL( self->iConnMonIapInfo );
  1976         TRAP( error, self->StartForcedRoamingFromWlanL( self->iConnMonIapInfo ) )
       
  1977         if ( error )
       
  1978             {        	
       
  1979             MPMLOGSTRING2("CMPMServer::StartForcedRoamingToConnectedWlan error2 = %d, ", error )
       
  1980             }
  1969         }
  1981         }
  1970     return 0;
  1982     return 0;
  1971     }
  1983     }
  1972 
  1984 
  1973 // ---------------------------------------------------------------------------
  1985 // ---------------------------------------------------------------------------
  1980     CMPMServer* self = static_cast<CMPMServer*>( aUpdater );
  1992     CMPMServer* self = static_cast<CMPMServer*>( aUpdater );
  1981     if ( self )
  1993     if ( self )
  1982         {        
  1994         {        
  1983         // cancel the periodic object
  1995         // cancel the periodic object
  1984         self->iRoamingToHotspotWlanPeriodic->Cancel();
  1996         self->iRoamingToHotspotWlanPeriodic->Cancel();
  1985         self->StartForcedRoamingToWlanL( self->iConnMonIapInfo );
  1997         TRAPD( error, self->StartForcedRoamingToWlanL( self->iConnMonIapInfo ) )
       
  1998         if ( error )
       
  1999             {        	
       
  2000             MPMLOGSTRING2("StartForcedRoamingToConnectedHotspotWlanL error1 = %d, ", error )
       
  2001             return 0;
       
  2002             }
       
  2003             
  1986         // Added also execution of policy based roaming logic because
  2004         // Added also execution of policy based roaming logic because
  1987         // connections that are in EStarting state, when WLAN signal
  2005         // connections that are in EStarting state, when WLAN signal
  1988         // gets weak, would remain in WLAN as long as signal is weak. 
  2006         // gets weak, would remain in WLAN as long as signal is weak. 
  1989         self->StartForcedRoamingFromWlanL( self->iConnMonIapInfo );
  2007         TRAP( error, self->StartForcedRoamingFromWlanL( self->iConnMonIapInfo ) )
       
  2008         if ( error )
       
  2009             {        	
       
  2010             MPMLOGSTRING2("StartForcedRoamingToConnectedHotspotWlanL error2 = %d, ", error )
       
  2011             }
  1990         }
  2012         }
  1991     return 0;
  2013     return 0;
  1992     }
  2014     }
  1993 
  2015 
  1994 // -----------------------------------------------------------------------------
  2016 // -----------------------------------------------------------------------------
  2025     
  2047     
  2026     // Go through all active connections and start roaming for the ones connected
  2048     // Go through all active connections and start roaming for the ones connected
  2027     // to a wlan not anymore listed in available iaps and not using mobility api
  2049     // to a wlan not anymore listed in available iaps and not using mobility api
  2028     for ( TInt index = 0; index < iActiveBMConns.Count(); index++ )
  2050     for ( TInt index = 0; index < iActiveBMConns.Count(); index++ )
  2029         {
  2051         {
  2030         if ( iCommsDatAccess->CheckWlanL( iActiveBMConns[index].iConnInfo.iIapId )
  2052         TWlanIapType iapType( ENotWlanIap );
  2031             == EWlanIap )
  2053         TRAPD( leave, iapType = iCommsDatAccess->CheckWlanL( iActiveBMConns[index].iConnInfo.iIapId ) )        	
       
  2054         if ( ( leave == KErrNone ) && ( iapType == EWlanIap ) )
  2032             {
  2055             {
  2033             // Check if used WLAN is still available
  2056             // Check if used WLAN is still available
  2034             TBool currentWlanIapAvailable = EFalse;
  2057             TBool currentWlanIapAvailable = EFalse;
  2035             for ( TUint iapIndex = 0; iapIndex < aIapInfo.iCount; iapIndex++ )
  2058             for ( TUint iapIndex = 0; iapIndex < aIapInfo.iCount; iapIndex++ )
  2036                 {
  2059                 {