--- a/supl/locationsuplfw/gateway/src/epos_csuplipcsubsession.cpp Thu May 27 13:18:17 2010 +0300
+++ b/supl/locationsuplfw/gateway/src/epos_csuplipcsubsession.cpp Wed Jun 23 18:40:52 2010 +0300
@@ -226,6 +226,19 @@
HandleNotifyTriggerFiredL(aMessage);
break;
}
+ case ESuplTerminalSubssnLocationConversion:
+ {
+ iMessage=aMessage;
+ iReqType = ESuplTerminalSubssnLocationConversion;
+ HandleLocationConversionL(aMessage);
+ break;
+ }
+
+ case ESuplTerminalSubssnCancelLocationConversion:
+ {
+ HandleCancelLocationConversionL(aMessage);
+ break;
+ }
default:
User::Leave(KErrNotSupported);
}
@@ -734,5 +747,51 @@
CleanupStack::Pop(fireInfoBuf);
}
-
+// ---------------------------------------------------------
+// CSuplIPCSubSession::HandleLocationConversionL
+//
+// (other items were commented in a header).
+// ---------------------------------------------------------
+//
+void CSuplIPCSubSession::HandleLocationConversionL(const RMessage2& aMessage)
+ {
+ DEBUG_TRACE("CSuplIPCSubSession::HandleLocationConversionL", __LINE__)
+
+ if (iSuplSessnReq->IsActive())
+ {
+ SuplGlobal::RequestComplete(aMessage, KErrAlreadyExists);
+ }
+
+ if(iReqType==ESuplTerminalSubssnLocationConversion)
+ {
+ HBufC8* cellBuf = SuplGlobal::CopyClientBuffer8LC(aMessage,0);
+
+ TGeoCellInfo& cellInfo = reinterpret_cast
+ <TGeoCellInfo&>(const_cast<TUint8&>(*cellBuf->Ptr()));
+
+ iSuplSessnReq->MakeLocationConversionRequestL( iSuplSession,cellInfo );
+
+ CleanupStack::PopAndDestroy(cellBuf);
+ }
+
+ }
+
+// ---------------------------------------------------------
+// CSuplIPCSubSession::HandleCancelLocationConversionL
+//
+// (other items were commented in a header).
+// ---------------------------------------------------------
+//
+void CSuplIPCSubSession::HandleCancelLocationConversionL(const RMessage2& aMessage)
+ {
+ DEBUG_TRACE("CSuplIPCSubSession::HandleCancelLocationConversionL", __LINE__)
+
+ if (!iSuplSessnReq->IsActive()||(iReqType!=ESuplTerminalSubssnLocationConversion))
+ {
+ User::Leave(KErrNotFound);
+ }
+ iSuplSessnReq->CancelLocationConversionRequest();
+ SuplGlobal::RequestComplete(aMessage, KErrNone);
+ CompleteRunSession(KErrCancel);
+ }
// End of File