equal
deleted
inserted
replaced
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 { |