connectionmonitoring/connmon/connectionmonitor/src/ConnMonNoti.cpp
branchRCL_3
changeset 26 0a9e01492035
parent 15 4dc3bb0099b0
child 36 04408506c6e0
equal deleted inserted replaced
24:c45d4fe2ff0a 26:0a9e01492035
    19 #include <es_enum_partner.h>
    19 #include <es_enum_partner.h>
    20 #endif
    20 #endif
    21 #include <e32base.h>
    21 #include <e32base.h>
    22 #include <rmmcustomapi.h>
    22 #include <rmmcustomapi.h>
    23 #include <featmgr.h>
    23 #include <featmgr.h>
       
    24 #include <gsmerror.h>     // KErrPacketDataTsyMaxPdpContextsReached 
       
    25 #include <etelpckt.h>     // KErrUmtsMaxNumOfContextExceededByNetwork
    24 
    26 
    25 #include "ConnMonServ.h"
    27 #include "ConnMonServ.h"
    26 #include "ConnMonSess.h"
    28 #include "ConnMonSess.h"
    27 #include "CEventQueue.h"
    29 #include "CEventQueue.h"
    28 #include "ConnMonIAP.h"
    30 #include "ConnMonIAP.h"
   560         {
   562         {
   561         LOGIT2("SERVER: connection status event FAILED <%d>, id %d", iStatus.Int(), iConnectionId)
   563         LOGIT2("SERVER: connection status event FAILED <%d>, id %d", iStatus.Int(), iConnectionId)
   562         }
   564         }
   563     else
   565     else
   564         {
   566         {
   565         iEventInfo.Reset();
       
   566 
       
   567         if ( iInfoBuf().iStage != static_cast< TInt >( iEventInfo.iData ) )
   567         if ( iInfoBuf().iStage != static_cast< TInt >( iEventInfo.iData ) )
   568             {
   568             {
       
   569             iEventInfo.Reset();
       
   570             
   569             // Send only new stage info to clients
   571             // Send only new stage info to clients
   570             iEventInfo.iEventType       = EConnMonConnectionStatusChange;
   572             iEventInfo.iEventType       = EConnMonConnectionStatusChange;
   571             iEventInfo.iConnectionId    = iConnectionId;
   573             iEventInfo.iConnectionId    = iConnectionId;
   572             iEventInfo.iSubConnectionId = iSubConnectionId;
   574             iEventInfo.iSubConnectionId = iSubConnectionId;
   573             iEventInfo.iData            = iInfoBuf().iStage;
   575             iEventInfo.iData            = iInfoBuf().iStage;
   638                 {
   640                 {
   639                 LOGIT("SERVER: This is old info. Packet was filtered out.")
   641                 LOGIT("SERVER: This is old info. Packet was filtered out.")
   640                 }
   642                 }
   641             }
   643             }
   642 
   644 
   643         if ( iInfoBuf().iError == KErrNone )
   645         if ( iInfoBuf().iError == KErrNone ||
   644             {
   646              iInfoBuf().iError == KErrGprsInsufficientResources            || // -4154
   645             // New request
   647              iInfoBuf().iError == KErrPacketDataTsyMaxPdpContextsReached   || // -6000
       
   648              iInfoBuf().iError == KErrUmtsMaxNumOfContextExceededByNetwork || // -4179
       
   649              iInfoBuf().iError == KErrUmtsMaxNumOfContextExceededByPhone )    // -4178
       
   650             {            	
       
   651             // New request, DisconnectDlg might be shown for the error codes above.
   646             Receive();
   652             Receive();
   647             }
   653             }
   648         else
   654         else
   649             {
   655             {
       
   656             LOGIT1("CProgressNotifier::RunL() - connection closing - iInfoBuf().iError: %d", iInfoBuf().iError)
   650             // Connection is closing.
   657             // Connection is closing.
   651             CSubConnUpDownNotifier* subConnUpDownNotifier = 0;
   658             CSubConnUpDownNotifier* subConnUpDownNotifier = 0;
   652             TInt err = iServer->Iap()->GetSubConnUpDownNotifier(
   659             TInt err = iServer->Iap()->GetSubConnUpDownNotifier(
   653                     iConnectionId,
   660                     iConnectionId,
   654                     &subConnUpDownNotifier );
   661                     &subConnUpDownNotifier );