telephonyprotocols/pdplayer/src/PDPDeftSCPR.cpp
changeset 73 70d75957b98f
parent 44 8b72faa1200f
equal deleted inserted replaced
69:b982c3e940f3 73:70d75957b98f
   165 CPDPDefaultSubConnectionProvider::CPDPDefaultSubConnectionProvider(ESock::CSubConnectionProviderFactoryBase& aFactory)
   165 CPDPDefaultSubConnectionProvider::CPDPDefaultSubConnectionProvider(ESock::CSubConnectionProviderFactoryBase& aFactory)
   166 	: CPDPSubConnectionProvider(aFactory, PDPDefSCprActivities::activityMap::Self()),
   166 	: CPDPSubConnectionProvider(aFactory, PDPDefSCprActivities::activityMap::Self()),
   167 	iAuthDialog(NULL)
   167 	iAuthDialog(NULL)
   168     {
   168     {
   169     LOG_NODE_CREATE1(KPDPSCprSubTag, CPDPDefaultSubConnectionProvider, " [factory=%08x]", &aFactory)
   169     LOG_NODE_CREATE1(KPDPSCprSubTag, CPDPDefaultSubConnectionProvider, " [factory=%08x]", &aFactory)
       
   170     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CPDPDEFAULTSUBCONNECTIONPROVIDER_CTOR_1, "Constructor");
   170     __FLOG_OPEN(KCFNodeTag, KPDPSCprSubTag);
   171     __FLOG_OPEN(KCFNodeTag, KPDPSCprSubTag);
   171     }
   172     }
   172 
   173 
   173 CPDPDefaultSubConnectionProvider::~CPDPDefaultSubConnectionProvider()
   174 CPDPDefaultSubConnectionProvider::~CPDPDefaultSubConnectionProvider()
   174     {
   175     {
   175 	LOG_NODE_DESTROY(KPDPSCprSubTag, CPDPDefaultSubConnectionProvider)
   176 	LOG_NODE_DESTROY(KPDPSCprSubTag, CPDPDefaultSubConnectionProvider)
   176     __FLOG_CLOSE;
   177     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CPDPDEFAULTSUBCONNECTIONPROVIDER_DTOR_1, "Destructor");
       
   178 	__FLOG_CLOSE;
   177 	delete iAuthDialog;
   179 	delete iAuthDialog;
   178     }
   180     }
   179 
   181 
   180 CPDPDefaultSubConnectionProvider* CPDPDefaultSubConnectionProvider::NewL(CPDPSubConnectionProviderFactory& aFactory)
   182 CPDPDefaultSubConnectionProvider* CPDPDefaultSubConnectionProvider::NewL(CPDPSubConnectionProviderFactory& aFactory)
   181 /**
   183 /**
   198     iPdpFsmInterface = new (ELeave) CPdpFsmInterface(*this);
   200     iPdpFsmInterface = new (ELeave) CPdpFsmInterface(*this);
   199     }
   201     }
   200 
   202 
   201 void CPDPDefaultSubConnectionProvider::PdpFsmAllContextEvent(TInt aNotification, TInt /*aParam*/)
   203 void CPDPDefaultSubConnectionProvider::PdpFsmAllContextEvent(TInt aNotification, TInt /*aParam*/)
   202     {
   204     {
       
   205     OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CPDPDEFAULTSUBCONNECTIONPROVIDER_PDPFSMALLCONTEXTEVENT_1, "Notification Id [%d]", aNotification);
   203     if (aNotification == KNetworkStatusEvent)
   206     if (aNotification == KNetworkStatusEvent)
   204         {
   207         {
   205         TPDPMessages::TPDPFSMMessage statusMsg(KNetworkStatusEvent, KErrNone);
   208         TPDPMessages::TPDPFSMMessage statusMsg(KNetworkStatusEvent, KErrNone);
   206         TRAP_IGNORE(ReceivedL(TNodeId(Id()), TNodeCtxId(0, Id()), statusMsg)); //TODO - use trap assert?
   209         TRAP_IGNORE(ReceivedL(TNodeId(Id()), TNodeCtxId(0, Id()), statusMsg)); //TODO - use trap assert?
   207         }
   210         }
   209 
   212 
   210 void CPDPDefaultSubConnectionProvider::LinkUp()
   213 void CPDPDefaultSubConnectionProvider::LinkUp()
   211     {
   214     {
   212     if (iLinkUps++ == 0)
   215     if (iLinkUps++ == 0)
   213         {
   216         {
       
   217         OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CPDPDEFAULTSUBCONNECTIONPROVIDER_LINKUP_1, "Sending KLinkLayerOpen message to control client/provider");
   214 		TCFMessage::TStateChange msg(Elements::TStateChange(KLinkLayerOpen, KErrNone));
   218 		TCFMessage::TStateChange msg(Elements::TStateChange(KLinkLayerOpen, KErrNone));
   215 		//Forward to control clients if there are any
   219 		//Forward to control clients if there are any
   216 		TInt ctrlClientCount = PostToClients<TDefaultClientMatchPolicy>(Id(), msg, TClientType(TCFClientType::ECtrl));
   220 		TInt ctrlClientCount = PostToClients<TDefaultClientMatchPolicy>(Id(), msg, TClientType(TCFClientType::ECtrl));
   217 		if (0==ctrlClientCount)
   221 		if (0==ctrlClientCount)
   218 			{ //If there are no control clients any more, forward to the control provider
   222 			{ //If there are no control clients any more, forward to the control provider
   223 
   227 
   224 void CPDPDefaultSubConnectionProvider::LinkDown(TInt aCause)
   228 void CPDPDefaultSubConnectionProvider::LinkDown(TInt aCause)
   225     {
   229     {
   226     if (++iLinkDowns-iLinkUps == 0 || iLinkUps == 0)
   230     if (++iLinkDowns-iLinkUps == 0 || iLinkUps == 0)
   227         {
   231         {
       
   232         OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CPDPDEFAULTSUBCONNECTIONPROVIDER_LINKDOWN_1, "Sending KLinkLayerClosed message to control provider");
   228         ControlProvider()->PostMessage(Id(),
   233         ControlProvider()->PostMessage(Id(),
   229             TCFMessage::TStateChange(Elements::TStateChange(KLinkLayerClosed, aCause)).CRef());
   234             TCFMessage::TStateChange(Elements::TStateChange(KLinkLayerClosed, aCause)).CRef());
   230         }
   235         }
   231 	SendDataClientIdleIfNoSubconnsAndNoClientsL();
   236 	SendDataClientIdleIfNoSubconnsAndNoClientsL();
   232     }
   237     }
   241 			&& GetFirstClient<TDefaultClientMatchPolicy>(TClientType(TCFClientType::EData, TCFClientType::EActive)) == NULL)
   246 			&& GetFirstClient<TDefaultClientMatchPolicy>(TClientType(TCFClientType::EData, TCFClientType::EActive)) == NULL)
   242 			{
   247 			{
   243 			RNodeInterface* cp = ControlProvider();
   248 			RNodeInterface* cp = ControlProvider();
   244 			if (cp)
   249 			if (cp)
   245 				{ //If there is no Control Provider we probably are an MCPR/Tier Manager/etc
   250 				{ //If there is no Control Provider we probably are an MCPR/Tier Manager/etc
       
   251                 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CPDPDEFAULTSUBCONNECTIONPROVIDER_SENDDATACLIENTIDLE_1, "Sending Idle message to control provider");
   246 				cp->PostMessage(Id(), TCFControlProvider::TIdle().CRef());
   252 				cp->PostMessage(Id(), TCFControlProvider::TIdle().CRef());
   247 				}
   253 				}
   248 			return;
   254 			return;
   249 			}
   255 			}
   250 
   256 
   264 
   270 
   265 			TInt i = 0;
   271 			TInt i = 0;
   266 			RNodeInterface* dc;
   272 			RNodeInterface* dc;
   267 			while ((dc = dciter[i++]) != NULL)
   273 			while ((dc = dciter[i++]) != NULL)
   268 				{
   274 				{
       
   275                 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CPDPDEFAULTSUBCONNECTIONPROVIDER_SENDDATACLIENTIDLE_2, "Sending Idle message");
   269 				dc->PostMessage(Id(), TCFControlProvider::TIdle().CRef());
   276 				dc->PostMessage(Id(), TCFControlProvider::TIdle().CRef());
   270 				}
   277 				}
   271 			}
   278 			}
   272 		}
   279 		}
   273 	}
   280 	}
   321     
   328     
   322     if (gprsProvision == NULL)
   329     if (gprsProvision == NULL)
   323         {
   330         {
   324         User::Leave(KErrCorrupt);
   331         User::Leave(KErrCorrupt);
   325         }
   332         }
       
   333 
       
   334     OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CPDPDEFAULTSUBCONNECTIONPROVIDER_PROTOCOLCONFIGOPTIONL_1, "Return pointer to TProtocolConfigOptionV2 of UMTS GPRS release [%d]", gprsProvision->UmtsGprsRelease());
   326 
   335 
   327     RPacketContext::TProtocolConfigOptionV2* configOption=NULL;
   336     RPacketContext::TProtocolConfigOptionV2* configOption=NULL;
   328 
   337 
   329     switch (gprsProvision->UmtsGprsRelease())
   338     switch (gprsProvision->UmtsGprsRelease())
   330         {
   339         {