adaptationlayer/tsy/simatktsy_dll/src/satnotifications.cpp
changeset 8 6295dc2169f3
parent 7 fa67e03b87df
child 9 8486d82aef45
equal deleted inserted replaced
7:fa67e03b87df 8:6295dc2169f3
  6169             CTlv browserId; // optional
  6169             CTlv browserId; // optional
  6170             returnValue = berTlv.TlvByTagValue( &browserId,
  6170             returnValue = berTlv.TlvByTagValue( &browserId,
  6171                 KTlvBrowserIdentityTag );
  6171                 KTlvBrowserIdentityTag );
  6172             if ( KErrNotFound != returnValue )
  6172             if ( KErrNotFound != returnValue )
  6173                 {
  6173                 {
  6174                 // Browser id 0x00-0x04 allowed, other values are RFU
  6174                 // Check if real data present in TLV
  6175                 switch ( browserId.GetShortInfo( ETLV_BrowserIdentity ) )
  6175                 if ( browserId.GetLength() )
  6176                     {
  6176                     {
  6177                     case KDefaultBrowser:
  6177                     // Browser id 0x00-0x04 allowed, other values are RFU
       
  6178                     switch ( browserId.GetShortInfo( ETLV_BrowserIdentity ) )
  6178                         {
  6179                         {
  6179                         launchBrowserV2.iBrowserId = RSat::EDefaultBrowser;
  6180                         case KDefaultBrowser:
  6180                         break;
  6181                             {
       
  6182                             launchBrowserV2.iBrowserId = RSat::EDefaultBrowser;
       
  6183                             break;
       
  6184                             }
       
  6185                         case KWMLBrowser:
       
  6186                             {
       
  6187                             launchBrowserV2.iBrowserId = RSat::EWMLBrowser;
       
  6188                             break;
       
  6189                             }
       
  6190                         case KHTMLBrowser:
       
  6191                             {
       
  6192                             launchBrowserV2.iBrowserId = RSat::EHTMLBrowser;
       
  6193                             break;
       
  6194                             }
       
  6195                         case KXHTMLBrowser:
       
  6196                             {
       
  6197                             launchBrowserV2.iBrowserId = RSat::EXHTMLBrowser;
       
  6198                             break;
       
  6199                             }
       
  6200                         case KCHTMLBrowser:
       
  6201                             {
       
  6202                             launchBrowserV2.iBrowserId = RSat::ECHTMLBrowser;
       
  6203                             break;
       
  6204                             }
       
  6205                         default:
       
  6206                             {
       
  6207                             // Object present but does not identify a known
       
  6208                             // browser ID
       
  6209                             launchBrowserV2.iBrowserId =
       
  6210                                 RSat::EBrowserIdNotSpecified;
       
  6211                             break;
       
  6212                             }
  6181                         }
  6213                         }
  6182 #if ( NCP_COMMON_S60_VERSION_SUPPORT >= S60_VERSION_50 )
  6214                     }
  6183                     case KWMLBrowser:
  6215                 else
  6184                         {
  6216                     {
  6185                         launchBrowserV2.iBrowserId = RSat::EWMLBrowser;
  6217                     // TLV present without real browser ID
  6186                         break;
  6218                     launchBrowserV2.iBrowserId =
  6187                         }
  6219                         RSat::EBrowserIdNotSpecified;
  6188                     case KHTMLBrowser:
       
  6189                         {
       
  6190                         launchBrowserV2.iBrowserId = RSat::EHTMLBrowser;
       
  6191                         break;
       
  6192                         }
       
  6193                     case KXHTMLBrowser:
       
  6194                         {
       
  6195                         launchBrowserV2.iBrowserId = RSat::EXHTMLBrowser;
       
  6196                         break;
       
  6197                         }
       
  6198                     case KCHTMLBrowser:
       
  6199                         {
       
  6200                         launchBrowserV2.iBrowserId = RSat::ECHTMLBrowser;
       
  6201                         break;
       
  6202                         }
       
  6203 #endif
       
  6204                     default:
       
  6205                         {
       
  6206                         // Object present but does not identify a known
       
  6207                         // browser ID
       
  6208                         launchBrowserV2.iBrowserId =
       
  6209                             RSat::EBrowserIdNotSpecified;
       
  6210                         break;
       
  6211                         }
       
  6212                     }
  6220                     }
  6213                 }
  6221                 }
  6214             else
  6222             else
  6215                 {
  6223                 {
  6216                 launchBrowserV2.iBrowserId = RSat::EBrowserIdNotPresent;
  6224                 launchBrowserV2.iBrowserId = RSat::EBrowserIdNotPresent;
  6229                         RSat::KMeUnableToProcessCmd, KNoCause );
  6237                         RSat::KMeUnableToProcessCmd, KNoCause );
  6230                     ret = KErrCorrupt;
  6238                     ret = KErrCorrupt;
  6231                     }
  6239                     }
  6232                 else
  6240                 else
  6233                     {
  6241                     {
  6234                     launchBrowserV2.iUrl.Copy( url.GetData( ETLV_Url ) );
  6242                     // Check if URL is really given
       
  6243                     // If not, SAT server will use default URL address
       
  6244                     if ( url.GetLength() )
       
  6245                         {
       
  6246                         launchBrowserV2.iUrl.Copy( url.GetData( ETLV_Url ) );
       
  6247                         }
  6235                     }
  6248                     }
  6236                 }
  6249                 }
  6237             else
  6250             else
  6238                 {
  6251                 {
  6239                 iSatMessHandler->LaunchBrowserTerminalResp(
  6252                 iSatMessHandler->LaunchBrowserTerminalResp(
  6871         CTsySatMessaging*   aSatMessaging    //Pointer to satmessaging class
  6884         CTsySatMessaging*   aSatMessaging    //Pointer to satmessaging class
  6872         )
  6885         )
  6873         :
  6886         :
  6874         CSatNotificationsBase( aSatMessHandler, aSatMessaging ),
  6887         CSatNotificationsBase( aSatMessHandler, aSatMessaging ),
  6875         iLocalInfoV3Pckg( NULL ),
  6888         iLocalInfoV3Pckg( NULL ),
  6876         iLocalInfoIsOngoing( EFalse )
  6889         iLocalInfoIsOngoing( EFalse ),
       
  6890         iLocalInfoAccTechOngoing( EFalse )
  6877     {
  6891     {
  6878     OstTrace0( TRACE_NORMAL, CSATNOTIFYLOCALINFO_CSATNOTIFYLOCALINFO, "CSatNotifyLocalInfo::CSatNotifyLocalInfo" );
  6892     OstTrace0( TRACE_NORMAL, CSATNOTIFYLOCALINFO_CSATNOTIFYLOCALINFO, "CSatNotifyLocalInfo::CSatNotifyLocalInfo" );
  6879     TFLOGSTRING("CSatNotifyLocalInfo::CSatNotifyLocalInfo");
  6893     TFLOGSTRING("CSatNotifyLocalInfo::CSatNotifyLocalInfo");
  6880     // Initialize response structure
  6894     // Initialize response structure
  6881     iLocalInfoRspV3 = RSat::TLocalInfoRspV3();
  6895     iLocalInfoRspV3 = RSat::TLocalInfoRspV3();
  7161         case RSat::KProvideLocalInfoAccTech:
  7175         case RSat::KProvideLocalInfoAccTech:
  7162             {
  7176             {
  7163             TFLOGSTRING("CSatNotifyLocalInfo:: request: Access Technology");
  7177             TFLOGSTRING("CSatNotifyLocalInfo:: request: Access Technology");
  7164             OstTrace0( TRACE_NORMAL, DUP13_CSATNOTIFYLOCALINFO_MESSAGERECEIVED, "CSatNotifyLocalInfo::MessageReceived Request: Access Technology" );
  7178             OstTrace0( TRACE_NORMAL, DUP13_CSATNOTIFYLOCALINFO_MESSAGERECEIVED, "CSatNotifyLocalInfo::MessageReceived Request: Access Technology" );
  7165             iLocalInfoIsOngoing = ETrue;
  7179             iLocalInfoIsOngoing = ETrue;
  7166             //request NET_RAT_REQ
  7180             iLocalInfoAccTechOngoing = ETrue;
  7167             iSatMessHandler->NetRatReq( iSatMessaging->GetTransactionId() );
  7181 
       
  7182             // Use same transaction id what comes with proactive
       
  7183             // command and compare that when response is received
       
  7184             iSatMessHandler->NetCellInfoGetReq( iTransId );
       
  7185 
  7168             break;
  7186             break;
  7169             }
  7187             }
  7170         // Currently not supported:
  7188         // Currently not supported:
  7171         case RSat::KProvideLocalInfoESN:
  7189         case RSat::KProvideLocalInfoESN:
  7172             {
  7190             {
  7255         iLocalInfoRspV3.iAdditionalInfo );   // Additional info
  7273         iLocalInfoRspV3.iAdditionalInfo );   // Additional info
  7256     return ret;
  7274     return ret;
  7257     }
  7275     }
  7258 
  7276 
  7259 // -----------------------------------------------------------------------------
  7277 // -----------------------------------------------------------------------------
  7260 // CSatNotifyLocalInfo::Status
  7278 // CSatNotifyLocalInfo::LocalInfoStatus
  7261 // Method to check and set local info status. This is used when
  7279 // Method to check and set local info status. This is used when
  7262 // SIM request NMR or Local Info.
  7280 // SIM request NMR or Local Info.
  7263 // (other items were commented in a header).
  7281 // (other items were commented in a header).
  7264 // -----------------------------------------------------------------------------
  7282 // -----------------------------------------------------------------------------
  7265 //
  7283 //
  7266 TBool CSatNotifyLocalInfo::Status
  7284 TBool CSatNotifyLocalInfo::LocalInfoStatus
  7267         (
  7285         (
  7268         TBool aClearStatus
  7286         TBool aClearStatus
  7269         )
  7287         )
  7270     {
  7288     {
  7271     OstTrace0( TRACE_NORMAL, CSATNOTIFYLOCALINFO_STATUS, "CSatNotifyLocalInfo::Status" );
  7289     OstTrace0( TRACE_NORMAL, CSATNOTIFYLOCALINFO_LOCALINFOSTATUS, "CSatNotifyLocalInfo::LocalInfoStatus" );
  7272     TFLOGSTRING("CSatNotifyLocalInfo::Status");
  7290     TFLOGSTRING("CSatNotifyLocalInfo::LocalInfoStatus");
       
  7291 
  7273     if ( aClearStatus )
  7292     if ( aClearStatus )
  7274         {
  7293         {
  7275         iLocalInfoIsOngoing = EFalse;
  7294         iLocalInfoIsOngoing = EFalse;
  7276         }
  7295         }
       
  7296 
  7277     return iLocalInfoIsOngoing;
  7297     return iLocalInfoIsOngoing;
  7278     }
  7298     }
  7279 
  7299 
       
  7300 // -----------------------------------------------------------------------------
       
  7301 // CSatNotifyLocalInfo::LocalInfoAccTechStatus
       
  7302 // Method to check and set local info access technology status.
       
  7303 // This is used when SIM request Local Info access technology.
       
  7304 // (other items were commented in a header).
       
  7305 // -----------------------------------------------------------------------------
       
  7306 //
       
  7307 TBool CSatNotifyLocalInfo::LocalInfoAccTechStatus
       
  7308         (
       
  7309         TBool aClearStatus
       
  7310         )
       
  7311     {
       
  7312 OstTrace0( TRACE_NORMAL, CSATNOTIFYLOCALINFO_LOCALINFOACCTECHSTATUS, "CSatNotifyLocalInfo::LocalInfoAccTechStatus" );
       
  7313 TFLOGSTRING("CSatNotifyLocalInfo::LocalInfoAccTechStatus");
       
  7314 
       
  7315     if ( aClearStatus )
       
  7316         {
       
  7317         iLocalInfoAccTechOngoing = EFalse;
       
  7318         }
       
  7319 
       
  7320     return iLocalInfoAccTechOngoing;
       
  7321     }
  7280 
  7322 
  7281 // -----------------------------------------------------------------------------
  7323 // -----------------------------------------------------------------------------
  7282 // CSatNotifyTimerMgmt::CSatNotifyTimerMgmt
  7324 // CSatNotifyTimerMgmt::CSatNotifyTimerMgmt
  7283 // C++ default constructor can NOT contain any code, that
  7325 // C++ default constructor can NOT contain any code, that
  7284 // might leave.
  7326 // might leave.