--- a/serviceproviders/sapi_location/tsrc/dev/tlocationprovidertest/src/tcompluginblocks.cpp Fri Jul 03 15:51:24 2009 +0100
+++ b/serviceproviders/sapi_location/tsrc/dev/tlocationprovidertest/src/tcompluginblocks.cpp Thu Aug 27 07:43:07 2009 +0300
@@ -89,8 +89,31 @@
ENTRY("TestWrongInterfaceName" , CTestProvider :: TestWrongInterfaceName),
ENTRY("TestAllApi" , CTestProvider :: TestAllApi),
ENTRY("CancelTwice" , CTestProvider :: CancelTwice),
-
-
+ ENTRY("GetLastLocation" , CTestProvider :: GetLastLocation),
+ ENTRY("GetLocationMultiple" , CTestProvider :: GetLocationMultiple),
+ ENTRY("TraceMultiple" , CTestProvider :: TraceMultiple),
+ ENTRY("TraceTimeOut" , CTestProvider :: TraceTimeOut),
+ ENTRY("TraceMultipleWrongCancel", CTestProvider::TraceMultipleWrongCancel),
+ ENTRY("EnableAccTrueGetLoc", CTestProvider::EnableAccTrueGetLoc),
+ ENTRY("EnableAccFalseGetLoc", CTestProvider::EnableAccFalseGetLoc),
+ ENTRY("EnableAccTrueTrace", CTestProvider::EnableAccTrueTrace),
+ ENTRY("EnableAccFalseTrace", CTestProvider::EnableAccFalseTrace),
+ ENTRY("EnableAccPosBasedGetloc", CTestProvider::EnableAccPosBasedGetloc),
+ ENTRY("EnableAccPosBasedWrongTypeGetloc", CTestProvider::EnableAccPosBasedWrongTypeGetloc),
+ ENTRY("EnableAccPosBasedTrace", CTestProvider::EnableAccPosBasedTrace),
+ ENTRY("EnableAccPosBasedWrongTypeTrace", CTestProvider::EnableAccPosBasedWrongTypeTrace),
+
+ ENTRY("CancelWithoutTransId" , CTestProvider ::CancelWithoutTransId),
+ ENTRY("CancelTransIdPosBased", CTestProvider::CancelTransIdPosBased),
+ ENTRY("GetLocationAsyncPosBasedUpdate" , CTestProvider ::GetLocationAsyncPosBasedUpdate),
+ ENTRY("GetLocationPosBasedWrongVal", CTestProvider::GetLocationPosBasedWrongVal),
+ ENTRY("GetLocationAsyncWrongUpdate" ,CTestProvider::GetLocationAsyncWrongUpdate),
+ ENTRY("GetLocPosBasedWrongVal" , CTestProvider ::GetLocPosBasedWrongVal),
+ ENTRY("TracePosBasedWrongVal" , CTestProvider ::TracePosBasedWrongVal),
+ ENTRY("TracePosBasedUpdateOpts" , CTestProvider ::TracePosBasedUpdateOpts),
+ ENTRY("TracePosBasedUpdateWrongVal" , CTestProvider ::TracePosBasedUpdateWrongVal),
+ ENTRY("FindDistancePositionBased" ,CTestProvider ::FindDistancePositionBased),
+ ENTRY("MoveCoordinatePosBased",CTestProvider::MoveCoordinatePosBased)
};
const TInt count = sizeof( KFunctions ) /
@@ -103,7 +126,7 @@
class ASyncLocCBF : public MLiwNotifyCallback
{
-
+ TInt cnt;
public :
TInt iRetStatus ;
@@ -115,7 +138,7 @@
ASyncLocCBF() : iRetStatus(KErrGeneral) //Default constructor
{
- ;
+ cnt = 0;
}
};
@@ -125,6 +148,7 @@
CLiwGenericParamList& aEventParamList,
const CLiwGenericParamList& aInParamList)
{
+ cnt++;
return 0;
}
@@ -276,291 +300,291 @@
}
TInt CTestProvider :: TestAllApi( CStifItemParser& /*aItem*/ )
- {
- __UHEAP_MARK ;
- TInt start = User::CountAllocCells();
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> data ;
- TRealFormat format ;
-
-
- if(LogSession.Connect() != KErrNone)
- {
- _LIT(KLog , "Failed to connect to file server") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
-
-
-
- if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
- {
- _LIT(KLog , "Failed to create notifications log file") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- }
-
- _LIT(KLog , "In CTGetLocation") ;
- iLog->Log(KLog) ;
-
-
+ {
+ __UHEAP_MARK ;
+ TInt start = User::CountAllocCells();
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create notifications log file") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CTGetLocation") ;
+ iLog->Log(KLog) ;
+
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
-
-
-
-
-
-
-
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- _LIT(Klog , "Success/Failure error code missing from outputlist") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- pos = 0 ;
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
-
- if(!genericparm)
- {
- _LIT(KLog , "Interface not found");
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+ _LIT(KLog , "Interface not found");
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
+
outputlist->Reset() ;
inputlist->Reset() ;
_LIT(KClass,"GenericLocationInfo");
inputlist->AppendL( TLiwGenericParam( KNullDesC8,TLiwVariant(KClass ) ) );
//inputlist->AppendL(TLiwGenericParam(NULL));
CLiwDefaultMap* updatemap = CLiwDefaultMap::NewL();
-
- _LIT8(KInterval,"UpdateInterval");
- _LIT8(KTimeout,"UpdateTimeOut");
- _LIT8(KAge,"UpdateMaxAge");
- _LIT8(KPartial,"PartialUpdates");
- const TInt KTime = 1000000;
-
+
+ _LIT8(KInterval,"UpdateInterval");
+ _LIT8(KTimeout,"UpdateTimeOut");
+ _LIT8(KAge,"UpdateMaxAge");
+ _LIT8(KPartial,"PartialUpdates");
+ const TInt KTime = 1000000;
+
updatemap->InsertL(KInterval , TLiwVariant(TInt32(2*KTime)));
updatemap->InsertL(KTimeout , TLiwVariant(TInt32(30*KTime)));
updatemap->InsertL(KAge , TLiwVariant(TInt32(0)));
updatemap->InsertL(KPartial , TLiwVariant(TBool(FALSE)));
-
+
inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(updatemap)));
updatemap->DecRef();
-
-
-
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
-
- pos = 0 ;
-
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
- _LIT(Klog, "Success/Failure state not known") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
- if((ErrorParm->Value()).AsTInt32() )
- {
- _LIT(KLog , "ExecutecmdL failed ");
- iLog->Log(KLog) ;
- return (ErrorParm->Value()).AsTInt32() ;
- }
-
-
-
- TInt index = 0 ;
-
- const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
-
-
- if(!GenericParam)
- {
- _LIT(Klog, "Out Param not found") ;
- iLog->Log(Klog) ;
- return KErrGeneral ; //Param Error
- }
-
- TLiwVariant Variant ;
-
- Variant = GenericParam->Value() ;
- const CLiwMap *LocMap = Variant.AsMap() ;
-
- TLiwVariant PosVariant ;
-
- LocMap->FindL(KLongitudeKey , PosVariant) ;
- TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
- data.Num(LongData , format) ;
- LogFile.Write(_L8("\n")) ;
- LogFile.Write(_L8("Logitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
-
- TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
- data.Num(LatData , format) ;
- LogFile.Write(_L8(" Latitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
- TReal32 AltData = PosVariant.AsTReal() ;
- data.Num(AltData , format) ;
-
- LogFile.Write(_L8(" Altitude = ")) ;
- LogFile.Write(data) ;
-
-
-
- //Test Calculate
- //TBuf8<20>CmdBufSet(KRequestCalculate) ;
- outputlist->Reset() ;
- inputlist->Reset() ;
-
- //CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
-
- TLiwGenericParam requesttype(KMathRequest , TLiwVariant(KRequestDistance)) ;
- inputlist->AppendL(requesttype) ;
-
-
-
- //Inserting first input param
- CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
- TReal64 slongitude = 71.03;
- SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
- TReal64 slatitude = 42.37;
- SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
-
- TReal64 saltitude = 1;
- SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(saltitude));
-
-
- TLiwGenericParam scoordinate(KDistanceParmSource,TLiwVariant(SourceCoordinate));
- inputlist->AppendL(scoordinate) ;
- SourceCoordinate->DecRef() ;
-
-
-
- //Inserting 2nd input param
- CLiwMap* DestCoordinate = CLiwDefaultMap::NewL();
- TReal64 dlongitude = 83.02;
- DestCoordinate->InsertL(KLongitudeKey,TLiwVariant(dlongitude));
- TReal64 dlatitude = 42.42;
- DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
-
- TReal64 daltitude = 1;
- DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(daltitude));
-
-
- TLiwGenericParam dcoordinate(KDistanceParmDestination,TLiwVariant(DestCoordinate));
- inputlist->AppendL(dcoordinate) ;
- DestCoordinate->DecRef() ;
-
- //CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
-
-
- TBuf8<20>CmdBufSet(KRequestCalculate) ;
-
- locinterface->ExecuteCmdL(CmdBufSet , *inputlist , *outputlist);
-
-
- pos = 0;
- const TLiwGenericParam* param = outputlist->FindFirst(pos, KErrorCode);
-
- if((param->Value()).AsTInt32() )
- {
- _LIT(KLog , "Calculate failed ");
- iLog->Log(KLog) ;
- return (ErrorParm->Value()).AsTInt32() ;
- }
-
- pos = 0;
- const TLiwGenericParam* paramb = outputlist->FindFirst(pos, KErrorCode);
-
- if((paramb->Value()).AsTInt32() )
- {
- _LIT(KLog , "Calculate failed ");
- iLog->Log(KLog) ;
- return (paramb->Value()).AsTInt32() ;
- }
- pos = 0;
- const TLiwGenericParam* resultparam = outputlist->FindFirst(pos, KMathOpResult);
- TLiwVariant resultvariant = resultparam->Value();
- TReal64 distance = resultvariant.AsTReal();
-
- //Test Calculate done
-
- LogFile.Close() ;
- LogSession.Close() ;
-
-
- locinterface->Close() ;
- outputlist->Reset() ;
+
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog, "Success/Failure state not known") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+ if((ErrorParm->Value()).AsTInt32() )
+ {
+ _LIT(KLog , "ExecutecmdL failed ");
+ iLog->Log(KLog) ;
+ return (ErrorParm->Value()).AsTInt32() ;
+ }
+
+
+
+ TInt index = 0 ;
+
+ const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
+
+
+ if(!GenericParam)
+ {
+ _LIT(Klog, "Out Param not found") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ; //Param Error
+ }
+
+ TLiwVariant Variant ;
+
+ Variant = GenericParam->Value() ;
+ const CLiwMap *LocMap = Variant.AsMap() ;
+
+ TLiwVariant PosVariant ;
+
+ LocMap->FindL(KLongitudeKey , PosVariant) ;
+ TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
+ data.Num(LongData , format) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Write(_L8("Logitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
+
+ TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
+ data.Num(LatData , format) ;
+ LogFile.Write(_L8(" Latitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
+ TReal32 AltData = PosVariant.AsTReal() ;
+ data.Num(AltData , format) ;
+
+ LogFile.Write(_L8(" Altitude = ")) ;
+ LogFile.Write(data) ;
+
+
+
+ //Test Calculate
+ //TBuf8<20>CmdBufSet(KRequestCalculate) ;
+ outputlist->Reset() ;
inputlist->Reset() ;
-
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
- TInt end = User::CountAllocCells();
-
-__UHEAP_MARKEND ;
- return KErrNone ;
-
-
-
-
- }
+
+ //CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ TLiwGenericParam requesttype(KMathRequest , TLiwVariant(KRequestDistance)) ;
+ inputlist->AppendL(requesttype) ;
+
+
+
+ //Inserting first input param
+ CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
+ TReal64 slongitude = 71.03;
+ SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
+ TReal64 slatitude = 42.37;
+ SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
+
+ TReal64 saltitude = 1;
+ SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(saltitude));
+
+
+ TLiwGenericParam scoordinate(KDistanceParmSource,TLiwVariant(SourceCoordinate));
+ inputlist->AppendL(scoordinate) ;
+ SourceCoordinate->DecRef() ;
+
+
+
+ //Inserting 2nd input param
+ CLiwMap* DestCoordinate = CLiwDefaultMap::NewL();
+ TReal64 dlongitude = 83.02;
+ DestCoordinate->InsertL(KLongitudeKey,TLiwVariant(dlongitude));
+ TReal64 dlatitude = 42.42;
+ DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
+
+ TReal64 daltitude = 1;
+ DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(daltitude));
+
+
+ TLiwGenericParam dcoordinate(KDistanceParmDestination,TLiwVariant(DestCoordinate));
+ inputlist->AppendL(dcoordinate) ;
+ DestCoordinate->DecRef() ;
+
+ //CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+ TBuf8<20>CmdBufSet(KRequestCalculate) ;
+
+ locinterface->ExecuteCmdL(CmdBufSet , *inputlist , *outputlist);
+
+
+ pos = 0;
+ const TLiwGenericParam* param = outputlist->FindFirst(pos, KErrorCode);
+
+ if((param->Value()).AsTInt32() )
+ {
+ _LIT(KLog , "Calculate failed ");
+ iLog->Log(KLog) ;
+ return (ErrorParm->Value()).AsTInt32() ;
+ }
+
+ pos = 0;
+ const TLiwGenericParam* paramb = outputlist->FindFirst(pos, KErrorCode);
+
+ if((paramb->Value()).AsTInt32() )
+ {
+ _LIT(KLog , "Calculate failed ");
+ iLog->Log(KLog) ;
+ return (paramb->Value()).AsTInt32() ;
+ }
+ pos = 0;
+ const TLiwGenericParam* resultparam = outputlist->FindFirst(pos, KMathOpResult);
+ TLiwVariant resultvariant = resultparam->Value();
+ TReal64 distance = resultvariant.AsTReal();
+
+ //Test Calculate done
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+
+ locinterface->Close() ;
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ TInt end = User::CountAllocCells();
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+
+
+ }
TInt CTestProvider :: TestWrongInterfaceName( CStifItemParser& /*aItem*/ )
- {
- __UHEAP_MARK;
-
- CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+ {
+ __UHEAP_MARK;
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
@@ -580,8 +604,8 @@
ServiceHandler->AttachL(a) ;
ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
+
+
TInt pos = 0;
@@ -594,16 +618,17 @@
TInt error = (errorprm->Value()).AsTInt32();
delete ServiceHandler;
a.ResetAndDestroy() ;
- a.Close() ;
-
- return KErrNone;
- __UHEAP_MARKEND;
- }
+ a.Close() ;
+ __UHEAP_MARKEND;
+
+ return KErrNone;
+ }
+
TInt CTestProvider :: TraceNegativeUpdateoption( CStifItemParser& /*aItem*/ )
- {
- __UHEAP_MARK;
- ASyncLocCBF callback;
- CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+ {
+ __UHEAP_MARK;
+ ASyncLocCBF callback;
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
@@ -623,8 +648,8 @@
ServiceHandler->AttachL(a) ;
ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
+
+
TInt pos = 0;
@@ -645,75 +670,75 @@
}
MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
- TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
- CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
-
- //Append LocationInformation Category
- TLiwGenericParam informationCategory(KLocationInfoCategory , TLiwVariant(KLocationBasicinfo)) ;
- InputList->AppendL(informationCategory) ;
-
- //Appending update options
- CLiwMap* updateoptionMap = CLiwDefaultMap::NewL();
-
- TInt32 updateInterval = 30000;
-
+
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ //Append LocationInformation Category
+ TLiwGenericParam informationCategory(KLocationInfoCategory , TLiwVariant(KLocationBasicinfo)) ;
+ InputList->AppendL(informationCategory) ;
+
+ //Appending update options
+ CLiwMap* updateoptionMap = CLiwDefaultMap::NewL();
+
+ TInt32 updateInterval = 30000;
+
updateoptionMap->InsertL(KUpdateOptionInterval,TLiwVariant(updateInterval));
-
- TInt32 updateTimeOut = -10000;
- updateoptionMap->InsertL(KUpdateOptionTimeOut,TLiwVariant(updateTimeOut));
-
- TInt32 updateMaxAge = 2000;
- updateoptionMap->InsertL(KUpdateOptionMaxAge,TLiwVariant(updateMaxAge));
-
- TLiwGenericParam updateOption(KUpdateOptionMap,TLiwVariant(updateoptionMap));
- InputList->AppendL(updateOption) ;
- updateoptionMap->DecRef();
-
- CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
-
-
- locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList,KLiwOptASyncronous,&callback);
-
-
-
-
- pos = 0;
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
-
- return KErrGeneral ;
- }
- TInt error = (ErrorParm->Value()).AsTInt32();
- if( SErrBadArgumentType == error )
- {
- error = KErrNone;
-
-
- }
- locinterface->Close() ;
- outputlist->Reset() ;
+
+ TInt32 updateTimeOut = -10000;
+ updateoptionMap->InsertL(KUpdateOptionTimeOut,TLiwVariant(updateTimeOut));
+
+ TInt32 updateMaxAge = 2000;
+ updateoptionMap->InsertL(KUpdateOptionMaxAge,TLiwVariant(updateMaxAge));
+
+ TLiwGenericParam updateOption(KUpdateOptionMap,TLiwVariant(updateoptionMap));
+ InputList->AppendL(updateOption) ;
+ updateoptionMap->DecRef();
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList,KLiwOptASyncronous,&callback);
+
+
+
+
+ pos = 0;
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+
+ return KErrGeneral ;
+ }
+ TInt error = (ErrorParm->Value()).AsTInt32();
+ if( SErrBadArgumentType == error )
+ {
+ error = KErrNone;
+
+
+ }
+ locinterface->Close() ;
+ outputlist->Reset() ;
inputlist->Reset() ;
- delete ServiceHandler ;
- delete OutParmList;
- delete InputList;
- a.ResetAndDestroy() ;
- a.Close() ;
- __UHEAP_MARKEND ;
- return error;
-
-
-
-
- }
+ delete ServiceHandler ;
+ delete OutParmList;
+ delete InputList;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ __UHEAP_MARKEND ;
+ return error;
+
+
+
+
+ }
TInt CTestProvider :: GetLocNegativeUpdateoption( CStifItemParser& /*aItem*/ )
- {
- __UHEAP_MARK;
- CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+ {
+ __UHEAP_MARK;
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
@@ -733,8 +758,8 @@
ServiceHandler->AttachL(a) ;
ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
+
+
TInt pos = 0;
@@ -755,2311 +780,2319 @@
}
MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
- TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
- CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
-
- //Append LocationInformation Category
- TLiwGenericParam informationCategory(KLocationInfoCategory , TLiwVariant(KLocationBasicinfo)) ;
- InputList->AppendL(informationCategory) ;
-
- //Appending update options
- CLiwMap* updateoptionMap = CLiwDefaultMap::NewL();
-
- TInt32 updateInterval = 30000;
-
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ //Append LocationInformation Category
+ TLiwGenericParam informationCategory(KLocationInfoCategory , TLiwVariant(KLocationBasicinfo)) ;
+ InputList->AppendL(informationCategory) ;
+
+ //Appending update options
+ CLiwMap* updateoptionMap = CLiwDefaultMap::NewL();
+
+ TInt32 updateInterval = 30000;
+
updateoptionMap->InsertL(KUpdateOptionInterval,TLiwVariant(updateInterval));
-
- TInt32 updateTimeOut = -10000;
- updateoptionMap->InsertL(KUpdateOptionTimeOut,TLiwVariant(updateTimeOut));
-
- TInt32 updateMaxAge = 2000;
- updateoptionMap->InsertL(KUpdateOptionMaxAge,TLiwVariant(updateMaxAge));
-
- TLiwGenericParam updateOption(KUpdateOptionMap,TLiwVariant(updateoptionMap));
- InputList->AppendL(updateOption) ;
- updateoptionMap->DecRef();
-
- CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
-
-
-
-
- locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
-
-
- pos = 0;
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
-
- return KErrGeneral ;
- }
- TInt error = (ErrorParm->Value()).AsTInt32();
- if( SErrBadArgumentType == error )
- {
- error = KErrNone;
-
-
- }
- locinterface->Close() ;
- delete ServiceHandler ;
- delete OutParmList;
- delete InputList;
- a.ResetAndDestroy() ;
- a.Close() ;
- __UHEAP_MARKEND ;
- return error;
-
-
-
-
- }
+
+ TInt32 updateTimeOut = -10000;
+ updateoptionMap->InsertL(KUpdateOptionTimeOut,TLiwVariant(updateTimeOut));
+
+ TInt32 updateMaxAge = 2000;
+ updateoptionMap->InsertL(KUpdateOptionMaxAge,TLiwVariant(updateMaxAge));
+
+ TLiwGenericParam updateOption(KUpdateOptionMap,TLiwVariant(updateoptionMap));
+ InputList->AppendL(updateOption) ;
+ updateoptionMap->DecRef();
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
+
+
+ pos = 0;
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+
+ return KErrGeneral ;
+ }
+ TInt error = (ErrorParm->Value()).AsTInt32();
+ if( SErrBadArgumentType == error )
+ {
+ error = KErrNone;
+
+
+ }
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ delete OutParmList;
+ delete InputList;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ __UHEAP_MARKEND ;
+ return error;
+
+
+
+
+ }
TInt CTestProvider :: GetLocationWrongInfoClass( CStifItemParser& /*aItem*/ )
- {
- __UHEAP_MARK ;
-
-
+ {
+ __UHEAP_MARK ;
+
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
-
-
-
-
-
-
-
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
-
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- pos = 0 ;
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
+
outputlist->Reset() ;
inputlist->Reset() ;
_LIT8(KClass,"LocationInformationClass");
_LIT(KClassArg,"Invalid");
inputlist->AppendL(TLiwGenericParam(KClass,TLiwVariant(KClassArg)));
-
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
-
- pos = 0 ;
-
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
-
- return KErrGeneral ;
- }
- TInt error = (ErrorParm->Value()).AsTInt32();
- if( SErrBadArgumentType == error )
- {
- error = KErrNone;
-
-
- }
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
- __UHEAP_MARKEND ;
- return error;
-
- }
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+
+ return KErrGeneral ;
+ }
+ TInt error = (ErrorParm->Value()).AsTInt32();
+ if( SErrBadArgumentType == error )
+ {
+ error = KErrNone;
+
+
+ }
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ __UHEAP_MARKEND ;
+ return error;
+
+ }
TInt CTestProvider :: TraceWrongInfoClass( CStifItemParser& /*aItem*/ )
- {
- __UHEAP_MARK ;
- TInt start = User::CountAllocCells();
- ASyncLocCBF callback;
-
-
+ {
+ __UHEAP_MARK ;
+ TInt start = User::CountAllocCells();
+ ASyncLocCBF callback;
+
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+ ServiceHandler->AttachL(a) ;
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+ TInt pos = 0;
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+ pos = 0 ;
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
-
-
-
-
-
-
-
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
-
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- pos = 0 ;
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
TBuf8<20>CmdBuf(KCmdTraceLocation) ;
-
+
outputlist->Reset() ;
inputlist->Reset() ;
_LIT8(KClass,"LocationInformationClass");
_LIT(KClassArg,"Invalid");
inputlist->AppendL(TLiwGenericParam(KClass,TLiwVariant(KClassArg)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous,&callback);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+ if(!ErrorParm)
+ {
+
+ return KErrGeneral ;
+ }
+ TInt error = (ErrorParm->Value()).AsTInt32();
+ if( SErrBadArgumentType == error )
+ {
+ error = KErrNone;
+ }
+ locinterface->Close() ;
+ outputlist->Reset() ;
+ inputlist->Reset() ;
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous,&callback);
-
- pos = 0 ;
-
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
-
- return KErrGeneral ;
- }
- TInt error = (ErrorParm->Value()).AsTInt32();
- if( SErrBadArgumentType == error )
- {
- error = KErrNone;
-
-
- }
- locinterface->Close() ;
- outputlist->Reset() ;
- inputlist->Reset() ;
+ //delete inputlist;
+ //delete outputlist;
+
delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
- TInt end = User::CountAllocCells();
- __UHEAP_MARKEND ;
- return error;
-
- }
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ TInt end = User::CountAllocCells();
+ __UHEAP_MARKEND ;
+ return error;
+
+ }
TInt CTestProvider :: getlocationPostionbasedpdateoption( CStifItemParser& /*aItem*/ )
-{
-__UHEAP_MARK ;
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> data ;
- TRealFormat format ;
-
-
- if(LogSession.Connect() != KErrNone)
- {
- _LIT(KLog , "Failed to connect to file server") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
-
-
-
- if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
- {
- _LIT(KLog , "Failed to create notifications log file") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- }
-
- _LIT(KLog , "In CTGetLocation") ;
- iLog->Log(KLog) ;
-
-
+ {
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create notifications log file") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CTGetLocation") ;
+ iLog->Log(KLog) ;
+
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
-
-
-
-
-
-
-
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- _LIT(Klog , "Success/Failure error code missing from outputlist") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- pos = 0 ;
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
-
- if(!genericparm)
- {
- _LIT(KLog , "Interface not found");
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+ _LIT(KLog , "Interface not found");
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
+
outputlist->Reset() ;
inputlist->Reset() ;
_LIT(KClass,"GenericLocationInfo");
inputlist->AppendL( TLiwGenericParam( KNullDesC8,TLiwVariant( ) ) );
//inputlist->AppendL(TLiwGenericParam(NULL));
CLiwDefaultMap* updatemap = CLiwDefaultMap::NewL();
-
- _LIT8(KInterval,"UpdateInterval");
- _LIT8(KTimeout,"UpdateTimeOut");
- _LIT8(KAge,"UpdateMaxAge");
- _LIT8(KPartial,"PartialUpdates");
- const TInt KTime = 1000000;
-
+
+ _LIT8(KInterval,"UpdateInterval");
+ _LIT8(KTimeout,"UpdateTimeOut");
+ _LIT8(KAge,"UpdateMaxAge");
+ _LIT8(KPartial,"PartialUpdates");
+ const TInt KTime = 1000000;
+
updatemap->InsertL(KInterval , TLiwVariant(TInt32(2*KTime)));
updatemap->InsertL(KTimeout , TLiwVariant(TInt32(30*KTime)));
updatemap->InsertL(KAge , TLiwVariant(TInt32(0)));
updatemap->InsertL(KPartial , TLiwVariant(TBool(FALSE)));
-
+
inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(updatemap)));
updatemap->DecRef();
-
-
-
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
-
- pos = 0 ;
-
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
- _LIT(Klog, "Success/Failure state not known") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
- if((ErrorParm->Value()).AsTInt32() )
- {
- _LIT(KLog , "ExecutecmdL failed ");
- iLog->Log(KLog) ;
- //return (ErrorParm->Value()).AsTInt32() ;
- }
-
-
-
- TInt index = 0 ;
-
- const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
-
-
- if(!GenericParam)
- {
- _LIT(Klog, "Out Param not found") ;
- iLog->Log(Klog) ;
- return KErrGeneral ; //Param Error
- }
-
- TLiwVariant Variant ;
-
- Variant = GenericParam->Value() ;
- const CLiwMap *LocMap = Variant.AsMap() ;
-
- TLiwVariant PosVariant ;
-
- LocMap->FindL(KLongitudeKey , PosVariant) ;
- TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
- data.Num(LongData , format) ;
- LogFile.Write(_L8("\n")) ;
- LogFile.Write(_L8("Logitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
-
- TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
- data.Num(LatData , format) ;
- LogFile.Write(_L8(" Latitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
- TReal32 AltData = PosVariant.AsTReal() ;
- data.Num(AltData , format) ;
-
- LogFile.Write(_L8(" Altitude = ")) ;
- LogFile.Write(data) ;
-
- LogFile.Close() ;
- LogSession.Close() ;
-
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
-
-__UHEAP_MARKEND ;
- return KErrNone ;
-
-
-
-}
+
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog, "Success/Failure state not known") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+ if((ErrorParm->Value()).AsTInt32() )
+ {
+ _LIT(KLog , "ExecutecmdL failed ");
+ iLog->Log(KLog) ;
+ //return (ErrorParm->Value()).AsTInt32() ;
+ }
+
+
+
+ TInt index = 0 ;
+
+ const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
+
+
+ if(!GenericParam)
+ {
+ _LIT(Klog, "Out Param not found") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ; //Param Error
+ }
+
+ TLiwVariant Variant ;
+
+ Variant = GenericParam->Value() ;
+ const CLiwMap *LocMap = Variant.AsMap() ;
+
+ TLiwVariant PosVariant ;
+
+ LocMap->FindL(KLongitudeKey , PosVariant) ;
+ TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
+ data.Num(LongData , format) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Write(_L8("Logitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
+
+ TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
+ data.Num(LatData , format) ;
+ LogFile.Write(_L8(" Latitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
+ TReal32 AltData = PosVariant.AsTReal() ;
+ data.Num(AltData , format) ;
+
+ LogFile.Write(_L8(" Altitude = ")) ;
+ LogFile.Write(data) ;
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+
+ }
TInt CTestProvider :: getlocationPostionbasedwithupdateoption( CStifItemParser& /*aItem*/ )
-{
-__UHEAP_MARK ;
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> data ;
- TRealFormat format ;
-
-
- if(LogSession.Connect() != KErrNone)
- {
- _LIT(KLog , "Failed to connect to file server") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
-
-
-
- if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
- {
- _LIT(KLog , "Failed to create notifications log file") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- }
-
- _LIT(KLog , "In CTGetLocation") ;
- iLog->Log(KLog) ;
-
-
+ {
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create notifications log file") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CTGetLocation") ;
+ iLog->Log(KLog) ;
+
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
-
-
-
-
-
-
-
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- _LIT(Klog , "Success/Failure error code missing from outputlist") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- pos = 0 ;
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
-
- if(!genericparm)
- {
- _LIT(KLog , "Interface not found");
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+ _LIT(KLog , "Interface not found");
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
+
outputlist->Reset() ;
inputlist->Reset() ;
_LIT(KClass,"GenericLocationInfo");
inputlist->AppendL( TLiwGenericParam( KNullDesC8,TLiwVariant( KClass ) ) );
CLiwDefaultMap* updatemap = CLiwDefaultMap::NewL();
-
- _LIT8(KInterval,"UpdateInterval");
- _LIT8(KTimeout,"UpdateTimeOut");
- _LIT8(KAge,"UpdateMaxAge");
- _LIT8(KPartial,"PartialUpdates");
- const TInt KTime = 1000000;
-
+
+ _LIT8(KInterval,"UpdateInterval");
+ _LIT8(KTimeout,"UpdateTimeOut");
+ _LIT8(KAge,"UpdateMaxAge");
+ _LIT8(KPartial,"PartialUpdates");
+ const TInt KTime = 1000000;
+
updatemap->InsertL(KInterval , TLiwVariant(TInt32(2*KTime)));
updatemap->InsertL(KTimeout , TLiwVariant(TInt32(30*KTime)));
updatemap->InsertL(KAge , TLiwVariant(TInt32(0)));
updatemap->InsertL(KPartial , TLiwVariant(TBool(FALSE)));
-
+
inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(updatemap)));
updatemap->DecRef();
-
-
-
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
-
- pos = 0 ;
-
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
- _LIT(Klog, "Success/Failure state not known") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
- if((ErrorParm->Value()).AsTInt32() )
- {
- _LIT(KLog , "ExecutecmdL failed ");
- iLog->Log(KLog) ;
- return (ErrorParm->Value()).AsTInt32() ;
- }
-
-
-
- TInt index = 0 ;
-
- const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
-
-
- if(!GenericParam)
- {
- _LIT(Klog, "Out Param not found") ;
- iLog->Log(Klog) ;
- return KErrGeneral ; //Param Error
- }
-
- TLiwVariant Variant ;
-
- Variant = GenericParam->Value() ;
- const CLiwMap *LocMap = Variant.AsMap() ;
-
- TLiwVariant PosVariant ;
-
- LocMap->FindL(KLongitudeKey , PosVariant) ;
- TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
- data.Num(LongData , format) ;
- LogFile.Write(_L8("\n")) ;
- LogFile.Write(_L8("Logitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
-
- TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
- data.Num(LatData , format) ;
- LogFile.Write(_L8(" Latitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
- TReal32 AltData = PosVariant.AsTReal() ;
- data.Num(AltData , format) ;
-
- LogFile.Write(_L8(" Altitude = ")) ;
- LogFile.Write(data) ;
-
-
- TLiwVariant Speed ;
-
- index = LocMap->FindL(_L8("HorizontalSpeed") , Speed ) ;
-
- if(index )
- {
-
- TReal speed = Speed.AsTReal() ;
-
- data.Num(speed , format) ;
-
- LogFile.Write(_L8("Speed = ")) ;
- LogFile.Write(data) ;
-
- }
-
-
- TLiwVariant SpeedError ;
- index = LocMap->FindL( _L8("HorizontalSpeedError") , SpeedError) ;
-
-
- if(index )
- {
-
- TReal speed = SpeedError.AsTReal() ;
-
- data.Num(speed , format) ;
-
- LogFile.Write(_L8("Speed = ")) ;
- LogFile.Write(data) ;
-
- }
-
- index = 0 ;
-
- TLiwVariant SatInfo ;
-
- index = LocMap->FindL(_L8("SatelliteNumView") , SatInfo) ;
-
- if(index )
- {
-
- TInt satnumView = SatInfo.AsTInt32() ;
- data.Num(satnumView , format);
-
- LogFile.Write(_L8("Satellite information")) ;
-
- LogFile.Write(_L8("Number of visible satellites ")) ;
- LogFile.Write(data) ;
- }
-
- index = 0 ;
-
- TLiwVariant SatInfoview ;
-
- index = LocMap->FindL( _L8("SatelliteNumViewUsed") , SatInfoview) ;
- if(index )
- {
-
-
- TInt satnumViewUsed = SatInfoview.AsTInt32() ;
- data.Num(satnumViewUsed , format);
-
- LogFile.Write(_L8("\nSatellite information")) ;
-
- LogFile.Write(_L8("\nSatelliteNumViewUsed")) ;
- LogFile.Write(data) ;
- }
-
- index = 0 ;
-
- TInt Headinginfo = 0 ;
-
- TLiwVariant Heading ;
- Headinginfo = LocMap->FindL(_L8("Heading") ,Heading) ;
-
- if(Headinginfo)
- {
-
-
- TReal heading = Heading.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nHeading")) ;
- LogFile.Write(data) ;
- }
-
-
- if(Headinginfo)
- {
- TLiwVariant HeadingError ;
- index = LocMap->FindL( _L8("HeadingError") , HeadingError ) ;
-
- if(index)
- {
-
-
- TReal heading = HeadingError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nHeading Error")) ;
- LogFile.Write(data) ;
-
- }
-
- TLiwVariant MagneticHeading ;
- index = LocMap->FindL( _L8("MagneticHeading") , MagneticHeading) ;
-
- if(index)
- {
-
-
- TReal heading = MagneticHeading.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\n MagneticHeading ")) ;
- LogFile.Write(data) ;
-
- }
-
-
- TLiwVariant MagneticHeadingError ;
- index = LocMap->FindL(_L8("MagneticHeadingError") ,MagneticHeadingError) ;
-
- if(index)
- {
-
-
- TReal heading = MagneticHeadingError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nMagneticHeading Error")) ;
- LogFile.Write(data) ;
-
- }
-
-
- } //End of Heading
-
-
-
- TLiwVariant TrueCourse ;
- index = LocMap->FindL( _L8("TrueCourse") , TrueCourse ) ;
-
- if( index)
- {
-
-
- TReal heading = TrueCourse.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\nDirection ")) ;
-
- LogFile.Write(_L8("\n TrueCourse Error")) ;
- LogFile.Write(data) ;
-
-
-
- TLiwVariant TrueCourseError ;
- index = LocMap->FindL( _L8("TrueCourseError") , TrueCourseError ) ;
-
- if( index)
- {
-
-
- TReal heading = TrueCourseError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nMagneticHeading Error")) ;
- LogFile.Write(data) ;
-
- }
-
-
- }
-
-
- TLiwVariant MagneticCourse ;
- index = LocMap->FindL(_L8("MagneticCourse") , MagneticCourse ) ;
-
-
- if(index)
- {
-
- TReal heading = MagneticCourse.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nMagneticCourse ")) ;
- LogFile.Write(data) ;
-
-
-
- TLiwVariant MagneticCourseError ;
- index = LocMap->FindL(_L8("MagneticCourseError") ,MagneticCourseError ) ;
-
- if( index)
- {
-
-
- TReal heading = MagneticCourseError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\n MagneticCourseError Error")) ;
- LogFile.Write(data) ;
-
- }
-
-
- }
-
-
-
- TLiwVariant NmeaNum ;
- index = LocMap->FindL(_L8("NMEASentence") , NmeaNum ) ;
-
-
- if(index)
- {
-
- TInt32 NMEASentence = NmeaNum.AsTInt32() ;
- data.Num(NMEASentence , format);
-
- LogFile.Write(_L8("\nNMEA Information")) ;
-
- LogFile.Write(_L8("\n number of NMEA Sentences ")) ;
- LogFile.Write(data) ;
-
- index = 0 ;
-
- const TLiwGenericParam *MagneticCourseError = outputlist->FindFirst(index , _L8("NMEASentenceStart") ) ;
-
- if(-1 != index)
- {
- Variant = MagneticCourseError->Value() ;
-
-
- }
-
-
- }
-
-
- LogFile.Close() ;
- LogSession.Close() ;
-
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
-
-__UHEAP_MARKEND ;
- return KErrNone ;
-
-
-
-}
+
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog, "Success/Failure state not known") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+ if((ErrorParm->Value()).AsTInt32() )
+ {
+ _LIT(KLog , "ExecutecmdL failed ");
+ iLog->Log(KLog) ;
+ return (ErrorParm->Value()).AsTInt32() ;
+ }
+
+
+
+ TInt index = 0 ;
+
+ const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
+
+
+ if(!GenericParam)
+ {
+ _LIT(Klog, "Out Param not found") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ; //Param Error
+ }
+
+ TLiwVariant Variant ;
+
+ Variant = GenericParam->Value() ;
+ const CLiwMap *LocMap = Variant.AsMap() ;
+
+ TLiwVariant PosVariant ;
+
+ LocMap->FindL(KLongitudeKey , PosVariant) ;
+ TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
+ data.Num(LongData , format) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Write(_L8("Logitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
+
+ TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
+ data.Num(LatData , format) ;
+ LogFile.Write(_L8(" Latitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
+ TReal32 AltData = PosVariant.AsTReal() ;
+ data.Num(AltData , format) ;
+
+ LogFile.Write(_L8(" Altitude = ")) ;
+ LogFile.Write(data) ;
+
+
+ TLiwVariant Speed ;
+
+ index = LocMap->FindL(_L8("HorizontalSpeed") , Speed ) ;
+
+ if(index )
+ {
+
+ TReal speed = Speed.AsTReal() ;
+
+ data.Num(speed , format) ;
+
+ LogFile.Write(_L8("Speed = ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ TLiwVariant SpeedError ;
+ index = LocMap->FindL( _L8("HorizontalSpeedError") , SpeedError) ;
+
+
+ if(index )
+ {
+
+ TReal speed = SpeedError.AsTReal() ;
+
+ data.Num(speed , format) ;
+
+ LogFile.Write(_L8("Speed = ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+ index = 0 ;
+
+ TLiwVariant SatInfo ;
+
+ index = LocMap->FindL(_L8("SatelliteNumView") , SatInfo) ;
+
+ if(index )
+ {
+
+ TInt satnumView = SatInfo.AsTInt32() ;
+ data.Num(satnumView , format);
+
+ LogFile.Write(_L8("Satellite information")) ;
+
+ LogFile.Write(_L8("Number of visible satellites ")) ;
+ LogFile.Write(data) ;
+ }
+
+ index = 0 ;
+
+ TLiwVariant SatInfoview ;
+
+ index = LocMap->FindL( _L8("SatelliteNumViewUsed") , SatInfoview) ;
+ if(index )
+ {
+
+
+ TInt satnumViewUsed = SatInfoview.AsTInt32() ;
+ data.Num(satnumViewUsed , format);
+
+ LogFile.Write(_L8("\nSatellite information")) ;
+
+ LogFile.Write(_L8("\nSatelliteNumViewUsed")) ;
+ LogFile.Write(data) ;
+ }
+
+ index = 0 ;
+
+ TInt Headinginfo = 0 ;
+
+ TLiwVariant Heading ;
+ Headinginfo = LocMap->FindL(_L8("Heading") ,Heading) ;
+
+ if(Headinginfo)
+ {
+
+
+ TReal heading = Heading.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nHeading")) ;
+ LogFile.Write(data) ;
+ }
+
+
+ if(Headinginfo)
+ {
+ TLiwVariant HeadingError ;
+ index = LocMap->FindL( _L8("HeadingError") , HeadingError ) ;
+
+ if(index)
+ {
+
+
+ TReal heading = HeadingError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+ TLiwVariant MagneticHeading ;
+ index = LocMap->FindL( _L8("MagneticHeading") , MagneticHeading) ;
+
+ if(index)
+ {
+
+
+ TReal heading = MagneticHeading.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\n MagneticHeading ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ TLiwVariant MagneticHeadingError ;
+ index = LocMap->FindL(_L8("MagneticHeadingError") ,MagneticHeadingError) ;
+
+ if(index)
+ {
+
+
+ TReal heading = MagneticHeadingError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ } //End of Heading
+
+
+
+ TLiwVariant TrueCourse ;
+ index = LocMap->FindL( _L8("TrueCourse") , TrueCourse ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = TrueCourse.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\nDirection ")) ;
+
+ LogFile.Write(_L8("\n TrueCourse Error")) ;
+ LogFile.Write(data) ;
+
+
+
+ TLiwVariant TrueCourseError ;
+ index = LocMap->FindL( _L8("TrueCourseError") , TrueCourseError ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = TrueCourseError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ }
+
+
+ TLiwVariant MagneticCourse ;
+ index = LocMap->FindL(_L8("MagneticCourse") , MagneticCourse ) ;
+
+
+ if(index)
+ {
+
+ TReal heading = MagneticCourse.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticCourse ")) ;
+ LogFile.Write(data) ;
+
+
+
+ TLiwVariant MagneticCourseError ;
+ index = LocMap->FindL(_L8("MagneticCourseError") ,MagneticCourseError ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = MagneticCourseError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\n MagneticCourseError Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ }
+
+
+
+ TLiwVariant NmeaNum ;
+ index = LocMap->FindL(_L8("NMEASentence") , NmeaNum ) ;
+
+
+ if(index)
+ {
+
+ TInt32 NMEASentence = NmeaNum.AsTInt32() ;
+ data.Num(NMEASentence , format);
+
+ LogFile.Write(_L8("\nNMEA Information")) ;
+
+ LogFile.Write(_L8("\n number of NMEA Sentences ")) ;
+ LogFile.Write(data) ;
+
+ index = 0 ;
+
+ const TLiwGenericParam *MagneticCourseError = outputlist->FindFirst(index , _L8("NMEASentenceStart") ) ;
+
+ if(-1 != index)
+ {
+ Variant = MagneticCourseError->Value() ;
+
+
+ }
+
+
+ }
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+
+ }
TInt CTestProvider :: getlocationPostionbased( CStifItemParser& /*aItem*/ )
-{
-__UHEAP_MARK ;
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> data ;
- TRealFormat format ;
-
-
- if(LogSession.Connect() != KErrNone)
- {
- _LIT(KLog , "Failed to connect to file server") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
-
-
-
- if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
- {
- _LIT(KLog , "Failed to create notifications log file") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- }
-
- _LIT(KLog , "In CTGetLocation") ;
- iLog->Log(KLog) ;
-
-
+ {
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create notifications log file") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CTGetLocation") ;
+ iLog->Log(KLog) ;
+
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
-
-
-
-
-
-
-
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- _LIT(Klog , "Success/Failure error code missing from outputlist") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- pos = 0 ;
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
-
- if(!genericparm)
- {
- _LIT(KLog , "Interface not found");
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+ _LIT(KLog , "Interface not found");
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
+
outputlist->Reset() ;
inputlist->Reset() ;
_LIT(KClass,"GenericLocationInfo");
inputlist->AppendL( TLiwGenericParam( KNullDesC8,TLiwVariant( KClass ) ) );
-
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
-
- pos = 0 ;
-
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
- _LIT(Klog, "Success/Failure state not known") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
- if((ErrorParm->Value()).AsTInt32() )
- {
- _LIT(KLog , "ExecutecmdL failed ");
- iLog->Log(KLog) ;
- return (ErrorParm->Value()).AsTInt32() ;
- }
-
-
-
- TInt index = 0 ;
-
- const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
-
-
- if(!GenericParam)
- {
- _LIT(Klog, "Out Param not found") ;
- iLog->Log(Klog) ;
- return KErrGeneral ; //Param Error
- }
-
- TLiwVariant Variant ;
-
- Variant = GenericParam->Value() ;
- const CLiwMap *LocMap = Variant.AsMap() ;
-
- TLiwVariant PosVariant ;
-
- LocMap->FindL(KLongitudeKey , PosVariant) ;
- TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
- data.Num(LongData , format) ;
- LogFile.Write(_L8("\n")) ;
- LogFile.Write(_L8("Logitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
-
- TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
- data.Num(LatData , format) ;
- LogFile.Write(_L8(" Latitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
- TReal32 AltData = PosVariant.AsTReal() ;
- data.Num(AltData , format) ;
-
- LogFile.Write(_L8(" Altitude = ")) ;
- LogFile.Write(data) ;
-
-
- TLiwVariant Speed ;
-
- index = LocMap->FindL(_L8("HorizontalSpeed") , Speed ) ;
-
- if(index )
- {
-
- TReal speed = Speed.AsTReal() ;
-
- data.Num(speed , format) ;
-
- LogFile.Write(_L8("Speed = ")) ;
- LogFile.Write(data) ;
-
- }
-
-
- TLiwVariant SpeedError ;
- index = LocMap->FindL( _L8("HorizontalSpeedError") , SpeedError) ;
-
-
- if(index )
- {
-
- TReal speed = SpeedError.AsTReal() ;
-
- data.Num(speed , format) ;
-
- LogFile.Write(_L8("Speed = ")) ;
- LogFile.Write(data) ;
-
- }
-
- index = 0 ;
-
- TLiwVariant SatInfo ;
-
- index = LocMap->FindL(_L8("SatelliteNumView") , SatInfo) ;
-
- if(index )
- {
-
- TInt satnumView = SatInfo.AsTInt32() ;
- data.Num(satnumView , format);
-
- LogFile.Write(_L8("Satellite information")) ;
-
- LogFile.Write(_L8("Number of visible satellites ")) ;
- LogFile.Write(data) ;
- }
-
- index = 0 ;
-
- TLiwVariant SatInfoview ;
-
- index = LocMap->FindL( _L8("SatelliteNumViewUsed") , SatInfoview) ;
- if(index )
- {
-
-
- TInt satnumViewUsed = SatInfoview.AsTInt32() ;
- data.Num(satnumViewUsed , format);
-
- LogFile.Write(_L8("\nSatellite information")) ;
-
- LogFile.Write(_L8("\nSatelliteNumViewUsed")) ;
- LogFile.Write(data) ;
- }
-
- index = 0 ;
-
- TInt Headinginfo = 0 ;
-
- TLiwVariant Heading ;
- Headinginfo = LocMap->FindL(_L8("Heading") ,Heading) ;
-
- if(Headinginfo)
- {
-
-
- TReal heading = Heading.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nHeading")) ;
- LogFile.Write(data) ;
- }
-
-
- if(Headinginfo)
- {
- TLiwVariant HeadingError ;
- index = LocMap->FindL( _L8("HeadingError") , HeadingError ) ;
-
- if(index)
- {
-
-
- TReal heading = HeadingError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nHeading Error")) ;
- LogFile.Write(data) ;
-
- }
-
- TLiwVariant MagneticHeading ;
- index = LocMap->FindL( _L8("MagneticHeading") , MagneticHeading) ;
-
- if(index)
- {
-
-
- TReal heading = MagneticHeading.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\n MagneticHeading ")) ;
- LogFile.Write(data) ;
-
- }
-
-
- TLiwVariant MagneticHeadingError ;
- index = LocMap->FindL(_L8("MagneticHeadingError") ,MagneticHeadingError) ;
-
- if(index)
- {
-
-
- TReal heading = MagneticHeadingError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nMagneticHeading Error")) ;
- LogFile.Write(data) ;
-
- }
-
-
- } //End of Heading
-
-
-
- TLiwVariant TrueCourse ;
- index = LocMap->FindL( _L8("TrueCourse") , TrueCourse ) ;
-
- if( index)
- {
-
-
- TReal heading = TrueCourse.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\nDirection ")) ;
-
- LogFile.Write(_L8("\n TrueCourse Error")) ;
- LogFile.Write(data) ;
-
-
-
- TLiwVariant TrueCourseError ;
- index = LocMap->FindL( _L8("TrueCourseError") , TrueCourseError ) ;
-
- if( index)
- {
-
-
- TReal heading = TrueCourseError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nMagneticHeading Error")) ;
- LogFile.Write(data) ;
-
- }
-
-
- }
-
-
- TLiwVariant MagneticCourse ;
- index = LocMap->FindL(_L8("MagneticCourse") , MagneticCourse ) ;
-
-
- if(index)
- {
-
- TReal heading = MagneticCourse.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nMagneticCourse ")) ;
- LogFile.Write(data) ;
-
-
-
- TLiwVariant MagneticCourseError ;
- index = LocMap->FindL(_L8("MagneticCourseError") ,MagneticCourseError ) ;
-
- if( index)
- {
-
-
- TReal heading = MagneticCourseError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\n MagneticCourseError Error")) ;
- LogFile.Write(data) ;
-
- }
-
-
- }
-
-
-
- TLiwVariant NmeaNum ;
- index = LocMap->FindL(_L8("NMEASentence") , NmeaNum ) ;
-
-
- if(index)
- {
-
- TInt32 NMEASentence = NmeaNum.AsTInt32() ;
- data.Num(NMEASentence , format);
-
- LogFile.Write(_L8("\nNMEA Information")) ;
-
- LogFile.Write(_L8("\n number of NMEA Sentences ")) ;
- LogFile.Write(data) ;
-
- index = 0 ;
-
- const TLiwGenericParam *MagneticCourseError = outputlist->FindFirst(index , _L8("NMEASentenceStart") ) ;
-
- if(-1 != index)
- {
- Variant = MagneticCourseError->Value() ;
-
-
- }
-
-
- }
-
-
- LogFile.Close() ;
- LogSession.Close() ;
-
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
-
-__UHEAP_MARKEND ;
- return KErrNone ;
-
-
-
-}
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog, "Success/Failure state not known") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+ if((ErrorParm->Value()).AsTInt32() )
+ {
+ _LIT(KLog , "ExecutecmdL failed ");
+ iLog->Log(KLog) ;
+ return (ErrorParm->Value()).AsTInt32() ;
+ }
+
+
+
+ TInt index = 0 ;
+
+ const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
+
+
+ if(!GenericParam)
+ {
+ _LIT(Klog, "Out Param not found") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ; //Param Error
+ }
+
+ TLiwVariant Variant ;
+
+ Variant = GenericParam->Value() ;
+ const CLiwMap *LocMap = Variant.AsMap() ;
+
+ TLiwVariant PosVariant ;
+
+ LocMap->FindL(KLongitudeKey , PosVariant) ;
+ TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
+ data.Num(LongData , format) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Write(_L8("Logitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
+
+ TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
+ data.Num(LatData , format) ;
+ LogFile.Write(_L8(" Latitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
+ TReal32 AltData = PosVariant.AsTReal() ;
+ data.Num(AltData , format) ;
+
+ LogFile.Write(_L8(" Altitude = ")) ;
+ LogFile.Write(data) ;
+
+
+ TLiwVariant Speed ;
+
+ index = LocMap->FindL(_L8("HorizontalSpeed") , Speed ) ;
+
+ if(index )
+ {
+
+ TReal speed = Speed.AsTReal() ;
+
+ data.Num(speed , format) ;
+
+ LogFile.Write(_L8("Speed = ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ TLiwVariant SpeedError ;
+ index = LocMap->FindL( _L8("HorizontalSpeedError") , SpeedError) ;
+
+
+ if(index )
+ {
+
+ TReal speed = SpeedError.AsTReal() ;
+
+ data.Num(speed , format) ;
+
+ LogFile.Write(_L8("Speed = ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+ index = 0 ;
+
+ TLiwVariant SatInfo ;
+
+ index = LocMap->FindL(_L8("SatelliteNumView") , SatInfo) ;
+
+ if(index )
+ {
+
+ TInt satnumView = SatInfo.AsTInt32() ;
+ data.Num(satnumView , format);
+
+ LogFile.Write(_L8("Satellite information")) ;
+
+ LogFile.Write(_L8("Number of visible satellites ")) ;
+ LogFile.Write(data) ;
+ }
+
+ index = 0 ;
+
+ TLiwVariant SatInfoview ;
+
+ index = LocMap->FindL( _L8("SatelliteNumViewUsed") , SatInfoview) ;
+ if(index )
+ {
+
+
+ TInt satnumViewUsed = SatInfoview.AsTInt32() ;
+ data.Num(satnumViewUsed , format);
+
+ LogFile.Write(_L8("\nSatellite information")) ;
+
+ LogFile.Write(_L8("\nSatelliteNumViewUsed")) ;
+ LogFile.Write(data) ;
+ }
+
+ index = 0 ;
+
+ TInt Headinginfo = 0 ;
+
+ TLiwVariant Heading ;
+ Headinginfo = LocMap->FindL(_L8("Heading") ,Heading) ;
+
+ if(Headinginfo)
+ {
+
+
+ TReal heading = Heading.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nHeading")) ;
+ LogFile.Write(data) ;
+ }
+
+
+ if(Headinginfo)
+ {
+ TLiwVariant HeadingError ;
+ index = LocMap->FindL( _L8("HeadingError") , HeadingError ) ;
+
+ if(index)
+ {
+
+
+ TReal heading = HeadingError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+ TLiwVariant MagneticHeading ;
+ index = LocMap->FindL( _L8("MagneticHeading") , MagneticHeading) ;
+
+ if(index)
+ {
+
+
+ TReal heading = MagneticHeading.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\n MagneticHeading ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ TLiwVariant MagneticHeadingError ;
+ index = LocMap->FindL(_L8("MagneticHeadingError") ,MagneticHeadingError) ;
+
+ if(index)
+ {
+
+
+ TReal heading = MagneticHeadingError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ } //End of Heading
+
+
+
+ TLiwVariant TrueCourse ;
+ index = LocMap->FindL( _L8("TrueCourse") , TrueCourse ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = TrueCourse.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\nDirection ")) ;
+
+ LogFile.Write(_L8("\n TrueCourse Error")) ;
+ LogFile.Write(data) ;
+
+
+
+ TLiwVariant TrueCourseError ;
+ index = LocMap->FindL( _L8("TrueCourseError") , TrueCourseError ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = TrueCourseError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ }
+
+
+ TLiwVariant MagneticCourse ;
+ index = LocMap->FindL(_L8("MagneticCourse") , MagneticCourse ) ;
+
+
+ if(index)
+ {
+
+ TReal heading = MagneticCourse.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticCourse ")) ;
+ LogFile.Write(data) ;
+
+
+
+ TLiwVariant MagneticCourseError ;
+ index = LocMap->FindL(_L8("MagneticCourseError") ,MagneticCourseError ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = MagneticCourseError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\n MagneticCourseError Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ }
+
+
+
+ TLiwVariant NmeaNum ;
+ index = LocMap->FindL(_L8("NMEASentence") , NmeaNum ) ;
+
+
+ if(index)
+ {
+
+ TInt32 NMEASentence = NmeaNum.AsTInt32() ;
+ data.Num(NMEASentence , format);
+
+ LogFile.Write(_L8("\nNMEA Information")) ;
+
+ LogFile.Write(_L8("\n number of NMEA Sentences ")) ;
+ LogFile.Write(data) ;
+
+ index = 0 ;
+
+ const TLiwGenericParam *MagneticCourseError = outputlist->FindFirst(index , _L8("NMEASentenceStart") ) ;
+
+ if(-1 != index)
+ {
+ Variant = MagneticCourseError->Value() ;
+
+
+ }
+
+
+ }
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+
+ }
TInt CTestProvider :: CancelWithInvalidTransId(CStifItemParser& /*aItem*/)
- {
- __UHEAP_MARK ;
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> data ;
- TRealFormat format ;
-
-
- if(LogSession.Connect() != KErrNone)
- {
- _LIT(KLog , "Failed to connect to file server") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
-
- _LIT(LogFileNameCancel , "C:\\cancelinvalid.txt") ;
-
- if(LogFile.Open(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- if(LogFile.Create(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) != KErrNone)
- {
- _LIT(KLog , "Failed to create log file\n") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- }
-
- _LIT(KLog , "In CancelWithInvalidTransactionID\n") ;
- data.Copy(KLog);
- LogFile.Write(data) ;
-
- User::After(5000000);
-
-
-
- CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
- // Input and output parameter list
- CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
- CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
-
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- pos = 0 ;
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
- TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
- outputlist->Reset() ;
- inputlist->Reset() ;
- ASyncLocCBF* callBack ;
-
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
-
- pos = 0 ;
-
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
- _LIT(Klog , "Success/Failure error code missing from outputlist\n") ;
- data.Copy(Klog);
- LogFile.Write(data) ;
-
- //LogFile.Write(Klog) ;
- return KErrGeneral ;
- }
-
- TInt reqerror = (ErrorParm->Value()).AsTInt32();
- _LIT(Klog , "ERRor code from getlocationasynch ") ;
- data.Copy(Klog);
- LogFile.Write(data) ;
-
- //LogFile.Write(Klog) ;
-
- TReal64 errordata = reqerror ;
- data.Num(errordata , format) ;
-
-
- LogFile.Write(data) ;
-
-
- pos = 0;
-
- _LIT8(KTransactionId, "TransactionID");
- const TLiwGenericParam *transid = outputlist->FindFirst(pos ,KTransactionId ) ;
- if(!transid)
- {
- _LIT(KTran,"Missing Transaction ID\n");
- data.Copy(KTran);
- LogFile.Write(data) ;
- //LogFile.Write(KTran);
- return KErrGeneral;
- }
- TInt trid = (transid->Value()).AsTInt32();
- outputlist->Reset() ;
- inputlist->Reset() ;
-
-
- inputlist->AppendL(TLiwGenericParam(KTransactionId,TLiwVariant(trid-2)));
-
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptCancel);
-
- ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
- _LIT(Klog , "Success/Failure error code missing from outputlist in cancel\n ") ;
- data.Copy(Klog);
- LogFile.Write(data) ;
- //LogFile.Write(Klog);
- return KErrGeneral ;
- }
-
- reqerror = (ErrorParm->Value()).AsTInt32();
-
- _LIT(Klog1 , "\nERRor code from cancel ") ;
-
- data.Copy(Klog1);
- LogFile.Write(data) ;
- //LogFile.Write(Klog1) ;
-
- errordata = reqerror ;
- data.Num(errordata , format) ;
-
-
- LogFile.Write(data) ;
- if( SErrNotFound == reqerror )
- {
- reqerror = 0;
- }
-
-
-
-
-
-
- LogFile.Close() ;
- LogSession.Close() ;
-
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
-
- __UHEAP_MARKEND ;
- return reqerror ;
-
-
-
- }
-
-
-TInt CTestProvider :: GetLocationSynchWrongUpdateMapType(CStifItemParser& /*aItem*/)
-{
-__UHEAP_MARK ;
-
-
+ {
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT(LogFileNameCancel , "C:\\cancelinvalid.txt") ;
+
+ if(LogFile.Open(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create log file\n") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CancelWithInvalidTransactionID\n") ;
+ data.Copy(KLog);
+ LogFile.Write(data) ;
+
+ User::After(5000000);
+
+
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
-
-
-
-
-
-
-
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
-
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- pos = 0 ;
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ ASyncLocCBF* callBack ;
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist\n") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+ return KErrGeneral ;
+ }
+
+ TInt reqerror = (ErrorParm->Value()).AsTInt32();
+ _LIT(Klog , "ERRor code from getlocationasynch ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+
+ TReal64 errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+
+
+ pos = 0;
+
+ _LIT8(KTransactionId, "TransactionID");
+ const TLiwGenericParam *transid = outputlist->FindFirst(pos ,KTransactionId ) ;
+ if(!transid)
+ {
+ _LIT(KTran,"Missing Transaction ID\n");
+ data.Copy(KTran);
+ LogFile.Write(data) ;
+ //LogFile.Write(KTran);
+ return KErrGeneral;
+ }
+ TInt trid = (transid->Value()).AsTInt32();
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+
+ inputlist->AppendL(TLiwGenericParam(KTransactionId,TLiwVariant(trid-2)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptCancel);
+
+ ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist in cancel\n ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog);
+ return KErrGeneral ;
+ }
+
+ reqerror = (ErrorParm->Value()).AsTInt32();
+
+ _LIT(Klog1 , "\nERRor code from cancel ") ;
+
+ data.Copy(Klog1);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog1) ;
+
+ errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+ if( SErrNotFound == reqerror )
+ {
+ reqerror = 0;
+ }
+
+
+
+
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return reqerror ;
+
+
+
+ }
+
+
+TInt CTestProvider :: GetLocationSynchWrongUpdateMapType(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+
outputlist->Reset() ;
inputlist->Reset() ;
_LIT8(KLocCategory,"LocationInformationClass");
_LIT16(KBasic,"BasicLocationInformation");
inputlist->AppendL(TLiwGenericParam(KLocCategory,TLiwVariant(KBasic)));
-
-
-
+
+
+
_LIT8(KUpdate,"Updateoptions");
inputlist->AppendL(TLiwGenericParam(KUpdate,TLiwVariant(30)));
-
-
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
-
- pos = 0 ;
-
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
-
- if(!ErrorParm)
- {
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
- return KErrGeneral ;
- }
-
- TInt err = (ErrorParm->Value()).AsTInt32();
-
- if( SErrBadArgumentType == err )
- {
- _LIT8(KErrorMessage,"ErrorMessage");
- _LIT(KNone,"Error");
-
- TPtrC errorstring(KNone);
- pos = 0;
- const TLiwGenericParam *ErrorParmstring = outputlist->FindFirst(pos ,KErrorMessage ) ;
- TLiwVariant variant = ErrorParmstring->Value();
- errorstring.Set( variant.AsDes() );
-
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
- __UHEAP_MARKEND ;
- return KErrNone;
- }
-
-
-
-
-
-
-
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
-
-__UHEAP_MARKEND ;
- return err ;
-
-
-
-}
-
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+
+ if(!ErrorParm)
+ {
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ return KErrGeneral ;
+ }
+
+ TInt err = (ErrorParm->Value()).AsTInt32();
+
+ if( SErrBadArgumentType == err )
+ {
+ _LIT8(KErrorMessage,"ErrorMessage");
+ _LIT(KNone,"Error");
+
+ TPtrC errorstring(KNone);
+ pos = 0;
+ const TLiwGenericParam *ErrorParmstring = outputlist->FindFirst(pos ,KErrorMessage ) ;
+ TLiwVariant variant = ErrorParmstring->Value();
+ errorstring.Set( variant.AsDes() );
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ __UHEAP_MARKEND ;
+ return KErrNone;
+ }
+
+
+
+
+
+
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return err ;
+
+
+
+ }
+
TInt CTestProvider :: CTestGetLocation()
-{
-__UHEAP_MARK ;
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> data ;
- TRealFormat format ;
-
-
- if(LogSession.Connect() != KErrNone)
- {
- _LIT(KLog , "Failed to connect to file server") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
-
-
-
- if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
- {
- _LIT(KLog , "Failed to create notifications log file") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- }
-
- _LIT(KLog , "In CTGetLocation") ;
- iLog->Log(KLog) ;
-
-
+ {
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create notifications log file") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CTGetLocation") ;
+ iLog->Log(KLog) ;
+
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
-
-
-
-
-
-
-
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- _LIT(Klog , "Success/Failure error code missing from outputlist") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- pos = 0 ;
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
-
- if(!genericparm)
- {
- _LIT(KLog , "Interface not found");
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+ _LIT(KLog , "Interface not found");
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
+
outputlist->Reset() ;
inputlist->Reset() ;
-
- locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
-
- pos = 0 ;
-
- const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
-
- if(!ErrorParm)
- {
- _LIT(Klog, "Success/Failure state not known") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
- if((ErrorParm->Value()).AsTInt32() )
- {
- _LIT(KLog , "ExecutecmdL failed ");
- iLog->Log(KLog) ;
- return (ErrorParm->Value()).AsTInt32() ;
- }
-
-
-
- TInt index = 0 ;
-
- const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
-
-
- if(!GenericParam)
- {
- _LIT(Klog, "Out Param not found") ;
- iLog->Log(Klog) ;
- return KErrGeneral ; //Param Error
- }
-
- TLiwVariant Variant ;
-
- Variant = GenericParam->Value() ;
- const CLiwMap *LocMap = Variant.AsMap() ;
-
- TLiwVariant PosVariant ;
-
- LocMap->FindL(KLongitudeKey , PosVariant) ;
- TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
- data.Num(LongData , format) ;
- LogFile.Write(_L8("\n")) ;
- LogFile.Write(_L8("Logitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
-
- TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
- data.Num(LatData , format) ;
- LogFile.Write(_L8(" Latitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
- TReal32 AltData = PosVariant.AsTReal() ;
- data.Num(AltData , format) ;
-
- LogFile.Write(_L8(" Altitude = ")) ;
- LogFile.Write(data) ;
-
-
- TLiwVariant Speed ;
-
- index = LocMap->FindL(_L8("HorizontalSpeed") , Speed ) ;
-
- if(index )
- {
-
- TReal speed = Speed.AsTReal() ;
-
- data.Num(speed , format) ;
-
- LogFile.Write(_L8("Speed = ")) ;
- LogFile.Write(data) ;
-
- }
-
-
- TLiwVariant SpeedError ;
- index = LocMap->FindL( _L8("HorizontalSpeedError") , SpeedError) ;
-
-
- if(index )
- {
-
- TReal speed = SpeedError.AsTReal() ;
-
- data.Num(speed , format) ;
-
- LogFile.Write(_L8("Speed = ")) ;
- LogFile.Write(data) ;
-
- }
-
- index = 0 ;
-
- TLiwVariant SatInfo ;
-
- index = LocMap->FindL(_L8("SatelliteNumView") , SatInfo) ;
-
- if(index )
- {
-
- TInt satnumView = SatInfo.AsTInt32() ;
- data.Num(satnumView , format);
-
- LogFile.Write(_L8("Satellite information")) ;
-
- LogFile.Write(_L8("Number of visible satellites ")) ;
- LogFile.Write(data) ;
- }
-
- index = 0 ;
-
- TLiwVariant SatInfoview ;
-
- index = LocMap->FindL( _L8("SatelliteNumViewUsed") , SatInfoview) ;
- if(index )
- {
-
-
- TInt satnumViewUsed = SatInfoview.AsTInt32() ;
- data.Num(satnumViewUsed , format);
-
- LogFile.Write(_L8("\nSatellite information")) ;
-
- LogFile.Write(_L8("\nSatelliteNumViewUsed")) ;
- LogFile.Write(data) ;
- }
-
- index = 0 ;
-
- TInt Headinginfo = 0 ;
-
- TLiwVariant Heading ;
- Headinginfo = LocMap->FindL(_L8("Heading") ,Heading) ;
-
- if(Headinginfo)
- {
-
-
- TReal heading = Heading.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nHeading")) ;
- LogFile.Write(data) ;
- }
-
-
- if(Headinginfo)
- {
- TLiwVariant HeadingError ;
- index = LocMap->FindL( _L8("HeadingError") , HeadingError ) ;
-
- if(index)
- {
-
-
- TReal heading = HeadingError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nHeading Error")) ;
- LogFile.Write(data) ;
-
- }
-
- TLiwVariant MagneticHeading ;
- index = LocMap->FindL( _L8("MagneticHeading") , MagneticHeading) ;
-
- if(index)
- {
-
-
- TReal heading = MagneticHeading.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\n MagneticHeading ")) ;
- LogFile.Write(data) ;
-
- }
-
-
- TLiwVariant MagneticHeadingError ;
- index = LocMap->FindL(_L8("MagneticHeadingError") ,MagneticHeadingError) ;
-
- if(index)
- {
-
-
- TReal heading = MagneticHeadingError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nMagneticHeading Error")) ;
- LogFile.Write(data) ;
-
- }
-
-
- } //End of Heading
-
-
-
- TLiwVariant TrueCourse ;
- index = LocMap->FindL( _L8("TrueCourse") , TrueCourse ) ;
-
- if( index)
- {
-
-
- TReal heading = TrueCourse.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\nDirection ")) ;
-
- LogFile.Write(_L8("\n TrueCourse Error")) ;
- LogFile.Write(data) ;
-
-
-
- TLiwVariant TrueCourseError ;
- index = LocMap->FindL( _L8("TrueCourseError") , TrueCourseError ) ;
-
- if( index)
- {
-
-
- TReal heading = TrueCourseError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nMagneticHeading Error")) ;
- LogFile.Write(data) ;
-
- }
-
-
- }
-
-
- TLiwVariant MagneticCourse ;
- index = LocMap->FindL(_L8("MagneticCourse") , MagneticCourse ) ;
-
-
- if(index)
- {
-
- TReal heading = MagneticCourse.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\nMagneticCourse ")) ;
- LogFile.Write(data) ;
-
-
-
- TLiwVariant MagneticCourseError ;
- index = LocMap->FindL(_L8("MagneticCourseError") ,MagneticCourseError ) ;
-
- if( index)
- {
-
-
- TReal heading = MagneticCourseError.AsTReal() ;
- data.Num(heading , format);
-
- LogFile.Write(_L8("\ncompass information")) ;
-
- LogFile.Write(_L8("\n MagneticCourseError Error")) ;
- LogFile.Write(data) ;
-
- }
-
-
- }
-
-
-
- TLiwVariant NmeaNum ;
- index = LocMap->FindL(_L8("NMEASentence") , NmeaNum ) ;
-
-
- if(index)
- {
-
- TInt32 NMEASentence = NmeaNum.AsTInt32() ;
- data.Num(NMEASentence , format);
-
- LogFile.Write(_L8("\nNMEA Information")) ;
-
- LogFile.Write(_L8("\n number of NMEA Sentences ")) ;
- LogFile.Write(data) ;
-
- index = 0 ;
-
- const TLiwGenericParam *MagneticCourseError = outputlist->FindFirst(index , _L8("NMEASentenceStart") ) ;
-
- if(-1 != index)
- {
- Variant = MagneticCourseError->Value() ;
-
-
- }
-
-
- }
-
-
- LogFile.Close() ;
- LogSession.Close() ;
-
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
-
-__UHEAP_MARKEND ;
- return KErrNone ;
-
-
-
-}
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog, "Success/Failure state not known") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+ if((ErrorParm->Value()).AsTInt32() )
+ {
+ _LIT(KLog , "ExecutecmdL failed ");
+ iLog->Log(KLog) ;
+ return (ErrorParm->Value()).AsTInt32() ;
+ }
+
+
+
+ TInt index = 0 ;
+
+ const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
+
+
+ if(!GenericParam)
+ {
+ _LIT(Klog, "Out Param not found") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ; //Param Error
+ }
+
+ TLiwVariant Variant ;
+
+ Variant = GenericParam->Value() ;
+ const CLiwMap *LocMap = Variant.AsMap() ;
+
+ TLiwVariant PosVariant ;
+
+ LocMap->FindL(KLongitudeKey , PosVariant) ;
+ TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
+ data.Num(LongData , format) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Write(_L8("Logitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
+
+ TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
+ data.Num(LatData , format) ;
+ LogFile.Write(_L8(" Latitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
+ TReal32 AltData = PosVariant.AsTReal() ;
+ data.Num(AltData , format) ;
+
+ LogFile.Write(_L8(" Altitude = ")) ;
+ LogFile.Write(data) ;
+
+ TLiwVariant Accuracy;
+ index = LocMap->FindL(_L8("HorizontalAccuracy"),Accuracy);
+
+ if(index)
+ {
+ TReal32 AccuracyVal = Accuracy.AsTReal();
+ data.Num(AccuracyVal , format) ;
+
+ LogFile.Write(_L8("Horizontal Acc = ")) ;
+ LogFile.Write(data) ;
+ }
+
+ Accuracy.Reset();
+ index = LocMap->FindL(_L8("VerticalAccuracy"),Accuracy);
+
+ if(index)
+ {
+ TReal32 AccuracyVal = Accuracy.AsTReal();
+ data.Num(AccuracyVal , format) ;
+
+ LogFile.Write(_L8("Vertical Acc = ")) ;
+ LogFile.Write(data) ;
+ }
+ TLiwVariant Speed ;
+
+ index = LocMap->FindL(_L8("HorizontalSpeed") , Speed ) ;
+
+ if(index )
+ {
+
+ TReal speed = Speed.AsTReal() ;
+
+ data.Num(speed , format) ;
+
+ LogFile.Write(_L8("Speed = ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ TLiwVariant SpeedError ;
+ index = LocMap->FindL( _L8("HorizontalSpeedError") , SpeedError) ;
+
+
+ if(index )
+ {
+
+ TReal speed = SpeedError.AsTReal() ;
+
+ data.Num(speed , format) ;
+
+ LogFile.Write(_L8("Speed = ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+ index = 0 ;
+
+ TLiwVariant SatInfo ;
+
+ index = LocMap->FindL(_L8("SatelliteNumView") , SatInfo) ;
+
+ if(index )
+ {
+
+ TInt satnumView = SatInfo.AsTInt32() ;
+ data.Num(satnumView , format);
+
+ LogFile.Write(_L8("Satellite information")) ;
+
+ LogFile.Write(_L8("Number of visible satellites ")) ;
+ LogFile.Write(data) ;
+ }
+
+ index = 0 ;
+
+ TLiwVariant SatInfoview ;
+
+ index = LocMap->FindL( _L8("SatelliteNumViewUsed") , SatInfoview) ;
+ if(index )
+ {
+
+
+ TInt satnumViewUsed = SatInfoview.AsTInt32() ;
+ data.Num(satnumViewUsed , format);
+
+ LogFile.Write(_L8("\nSatellite information")) ;
+
+ LogFile.Write(_L8("\nSatelliteNumViewUsed")) ;
+ LogFile.Write(data) ;
+ }
+
+ index = 0 ;
+
+ TInt Headinginfo = 0 ;
+
+ TLiwVariant Heading ;
+ Headinginfo = LocMap->FindL(_L8("Heading") ,Heading) ;
+
+ if(Headinginfo)
+ {
+
+
+ TReal heading = Heading.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nHeading")) ;
+ LogFile.Write(data) ;
+ }
+
+
+ if(Headinginfo)
+ {
+ TLiwVariant HeadingError ;
+ index = LocMap->FindL( _L8("HeadingError") , HeadingError ) ;
+
+ if(index)
+ {
+
+
+ TReal heading = HeadingError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+ TLiwVariant MagneticHeading ;
+ index = LocMap->FindL( _L8("MagneticHeading") , MagneticHeading) ;
+
+ if(index)
+ {
+
+
+ TReal heading = MagneticHeading.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\n MagneticHeading ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ TLiwVariant MagneticHeadingError ;
+ index = LocMap->FindL(_L8("MagneticHeadingError") ,MagneticHeadingError) ;
+
+ if(index)
+ {
+
+
+ TReal heading = MagneticHeadingError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ } //End of Heading
+
+
+
+ TLiwVariant TrueCourse ;
+ index = LocMap->FindL( _L8("TrueCourse") , TrueCourse ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = TrueCourse.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\nDirection ")) ;
+
+ LogFile.Write(_L8("\n TrueCourse Error")) ;
+ LogFile.Write(data) ;
+
+
+
+ TLiwVariant TrueCourseError ;
+ index = LocMap->FindL( _L8("TrueCourseError") , TrueCourseError ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = TrueCourseError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ }
+
+
+ TLiwVariant MagneticCourse ;
+ index = LocMap->FindL(_L8("MagneticCourse") , MagneticCourse ) ;
+
+
+ if(index)
+ {
+
+ TReal heading = MagneticCourse.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticCourse ")) ;
+ LogFile.Write(data) ;
+
+
+
+ TLiwVariant MagneticCourseError ;
+ index = LocMap->FindL(_L8("MagneticCourseError") ,MagneticCourseError ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = MagneticCourseError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\n MagneticCourseError Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ }
+
+
+
+ TLiwVariant NmeaNum ;
+ index = LocMap->FindL(_L8("NMEASentence") , NmeaNum ) ;
+
+
+ if(index)
+ {
+
+ TInt32 NMEASentence = NmeaNum.AsTInt32() ;
+ data.Num(NMEASentence , format);
+
+ LogFile.Write(_L8("\nNMEA Information")) ;
+
+ LogFile.Write(_L8("\n number of NMEA Sentences ")) ;
+ LogFile.Write(data) ;
+
+ index = 0 ;
+
+ const TLiwGenericParam *MagneticCourseError = outputlist->FindFirst(index , _L8("NMEASentenceStart") ) ;
+
+ if(-1 != index)
+ {
+ Variant = MagneticCourseError->Value() ;
+
+
+ }
+
+
+ }
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+
+ }
TInt CTestProvider :: GetLocation(CStifItemParser & /*aItem */)
-{
- __UHEAP_MARK ;
- TInt ret = CTestGetLocation() ;
- __UHEAP_MARKEND ;
- return ret ;
-
-}
+ {
+ __UHEAP_MARK ;
+ TInt ret = CTestGetLocation() ;
+ __UHEAP_MARKEND ;
+ return ret ;
+
+ }
TInt CTestProvider :: LocationUpdates(CStifItemParser& /*aItem*/)
- {
- _LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+ {
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L(" LocationUpdates Thread") , GetLocUpdates ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);
-
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);
+
if(!ret)
- {
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
- FunctionThread.Close();
-
- ret = Status.Int() ;
- }
- return ret;
- }
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ ret = Status.Int() ;
+ }
+ return ret;
+ }
#if 0
TInt CTestProvider :: LastKnownLoc(CStifItemParser& /*aItem*/)
- {
- return KErrNone ;
- }
+ {
+ return KErrNone ;
+ }
#endif
-
+
TInt CTestProvider ::GetLocationAsynch(CStifItemParser& /*aItem*/)
- {
-
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+ {
+
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
FunctionThread.Create(_L("GetLocationAsynch Thread") , FindLocationAsynch ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);
-
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);
+
FunctionThread.Logon(Status) ;
FunctionThread.Resume() ;
-
+
User :: WaitForRequest (Status) ;
- FunctionThread.Close();
-
- return Status.Int() ;
-
-
- }
-
-
+ FunctionThread.Close();
+
+ return Status.Int() ;
+
+
+ }
+
+
TInt CTestProvider ::ServiceNotAvailable(CStifItemParser& /*aItem*/)
-{
-
-
-
- _LIT8(KService, "Service.Location");
+ {
+
+ __UHEAP_MARK ;
+
+ _LIT8(KService, "Service.Location");
_LIT8(KIDataSource,"ILocation");
-
- return KErrNone ; //Manual test case
+
+ return KErrNone ; //Manual test case
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KService, KIDataSource);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
-
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- _LIT(Klog , "Success/Failure error code missing from outputlist") ;
- iLog->Log(Klog) ;
- return KErrGeneral ;
- }
-
-
- _LIT8(KDataSource, "ILocation");
-
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
-
- if(!genericparm)
- {
- _LIT(KLog , "Interface not found");
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
- TInt result = KErrGeneral ;
- TInt error ;
- TInt index = 0;
-
-
- // CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
- TBuf8<20>CmdBuf(KCmdGetLocation) ;
- CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
-
- locinterface->ExecuteCmdL(CmdBuf , *InputList , *InputList );
- const TLiwGenericParam *GenericParam = InputList->FindFirst(index , KErrorCode ) ;
-
- if(GenericParam)
- {
- TLiwVariant ErrorVariant = GenericParam->Value() ;
-
- error = ErrorVariant.AsTInt32();
- }
-
- if((error == KErrNotFound ) || (error == KPositionQualityLoss))
- {
- _LIT(KLog , "positioning technology not available") ;
- iLog->Log(KLog) ;
- result = KErrNone ;
- }
-
-
- locinterface->Close() ;
- delete InputList ;
- delete ServiceHandler ;
-
- a.ResetAndDestroy() ;
- // delete OutParmList ;
-
- return result ;
-
-}
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KService, KIDataSource);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+ _LIT(KLog , "Interface not found");
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+ TInt result = KErrGeneral ;
+ TInt error ;
+ TInt index = 0;
+
+
+ // CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ locinterface->ExecuteCmdL(CmdBuf , *InputList , *InputList );
+ const TLiwGenericParam *GenericParam = InputList->FindFirst(index , KErrorCode ) ;
+
+ if(GenericParam)
+ {
+ TLiwVariant ErrorVariant = GenericParam->Value() ;
+
+ error = ErrorVariant.AsTInt32();
+ }
+
+ if((error == KErrNotFound ) || (error == KPositionQualityLoss))
+ {
+ _LIT(KLog , "positioning technology not available") ;
+ iLog->Log(KLog) ;
+ result = KErrNone ;
+ }
+
+
+ locinterface->Close() ;
+ delete InputList ;
+ delete ServiceHandler ;
+
+ a.ResetAndDestroy() ;
+ // delete OutParmList ;
+ __UHEAP_MARKEND ;
+ return result ;
+
+ }
+
/*
* This is a manual test case were the service was available when the
* request was made and then Lost the service (Contact to location servier lost
*/
-
-
+
+
TInt CTestProvider :: ServiceFailed(CStifItemParser& /*aItem*/)
-{
- _LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
- _LIT(KLog , "In service failed test ") ;
- iLog->Log(KTLocTest) ;
-
- return KErrNone ; //Manual test case
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+ {
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+ _LIT(KLog , "In service failed test ") ;
+ iLog->Log(KTLocTest) ;
+
+ return KErrNone ; //Manual test case
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L("ServiceFailed Thread") , ServiceFailedTest ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);;
-
- if(!ret)
- {
-
- _LIT(Klog , "Created the thread ") ;
- iLog->Log(Klog) ;
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
- FunctionThread.Close();
-
- ret = Status.Int() ;
- }
-
-
- if((ret == KErrNotFound ) || (ret == KPositionQualityLoss))
- {
- _LIT(KLog , "Service provider crashed or went dowm") ;
- iLog->Log(KLog) ;
- }
-
-
- return ret;
-}
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);;
+
+ if(!ret)
+ {
+
+ _LIT(Klog , "Created the thread ") ;
+ iLog->Log(Klog) ;
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ ret = Status.Int() ;
+ }
+
+
+ if((ret == KErrNotFound ) || (ret == KPositionQualityLoss))
+ {
+ _LIT(KLog , "Service provider crashed or went dowm") ;
+ iLog->Log(KLog) ;
+ }
+
+
+ return ret;
+ }
@@ -3068,136 +3101,136 @@
*/
TInt CTestProvider :: StraySignal(CStifItemParser& /*aItem*/)
-{
- _LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
- _LIT(KLog , "StraySignalTest ") ;
- iLog->Log(KTLocTest) ;
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+ {
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+ _LIT(KLog , "StraySignalTest ") ;
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L("stray signal") , StrayTest ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);;
-
- if(!ret)
- {
-
- _LIT(Klog , "Created the thread ") ;
- iLog->Log(Klog) ;
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
- FunctionThread.Close();
-
- ret = Status.Int() ;
- }
-
- return ret;
-}
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);;
+
+ if(!ret)
+ {
+
+ _LIT(Klog , "Created the thread ") ;
+ iLog->Log(Klog) ;
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ ret = Status.Int() ;
+ }
+
+ return ret;
+ }
TInt CTestProvider :: StraySignalGetLoc(CStifItemParser& /*aItem*/)
-{
- _LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
- _LIT(KLog , "StraySignalTestGetLoc ") ;
- iLog->Log(KTLocTest) ;
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+ {
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+ _LIT(KLog , "StraySignalTestGetLoc ") ;
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L("stray signal GetLocation") , StrayTestGetLoc ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);;
-
- if(!ret)
- {
-
- _LIT(Klog , "Created the thread ") ;
- iLog->Log(Klog) ;
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
- FunctionThread.Close();
-
- ret = Status.Int() ;
- }
-
-
- return ret;
-}
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);;
+
+ if(!ret)
+ {
+
+ _LIT(Klog , "Created the thread ") ;
+ iLog->Log(Klog) ;
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ ret = Status.Int() ;
+ }
+
+
+ return ret;
+ }
TInt CTestProvider :: ConcurrentCallsGetLoc (CStifItemParser& /*aItem*/)
-{
-_LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+ {
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L(" ConcurrentCallsGetLoc Thread") , ConcurrentGetLocationCalls ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);
-
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);
+
if(ret == KErrNone)
- {
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
-
-
- ret = Status.Int() ;
- }
- FunctionThread.Close();
-
- if(ret == SErrServiceInUse)
- return KErrNone ;
-
- return KErrGeneral;
-}
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ return KErrGeneral ;
+
+ return KErrNone;
+ }
TInt CTestProvider :: ConcurrentCallsTrace (CStifItemParser& /*aItem*/)
-{
-_LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+ {
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L(" ConcurrentCallsGetLoc Thread") , TraceConcurrent ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);
-
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);
+
if(ret == KErrNone)
- {
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
-
-
- ret = Status.Int() ;
- }
- FunctionThread.Close();
-
- if(ret == SErrServiceInUse)
- {
- _LIT(KLog , "Return Type is valid");
- iLog->Log(KLog);
- }
-
- else
- {
- _LIT(KLog , "Return type is not valid\n") ;
- iLog->Log(KLog) ;
- }
- return KErrNone ;
-
- return KErrGeneral;
-}
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ {
+ _LIT(KLog , "Return Type is valid");
+ iLog->Log(KLog);
+ }
+
+ else
+ {
+ _LIT(KLog , "Return type is not valid\n") ;
+ iLog->Log(KLog) ;
+ }
+ return KErrNone ;
+
+ return KErrGeneral;
+ }
/**
@@ -3205,101 +3238,101 @@
*/
TInt CTestProvider :: EmptyCancelTraceTest(CStifItemParser& /*aItem*/)
{
- __UHEAP_MARK ;
- _LIT(KLog , "CancellTest") ;
-
-
- iLog->Log(KLog) ;
-
-
-
-
-
+ __UHEAP_MARK ;
+ _LIT(KLog , "CancellTest") ;
+
+
+ iLog->Log(KLog) ;
+
+
+
+
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- return KErrGeneral ;
- }
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ return KErrGeneral ;
+ }
+
pos = 0 ;
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
- _LIT8(KCancell , "CancelNotification") ;
- _LIT8( KType ,"CancelRequestType") ;
- _LIT8( KTraceCancel ,"TraceCancel") ;
- inputlist->AppendL(TLiwGenericParam (KType , TLiwVariant (KTraceCancel))) ;
-
- locinterface->ExecuteCmdL(KCancell , *inputlist , *outputlist) ;
-
- pos = 0 ;
- const TLiwGenericParam *errprm = outputlist->FindFirst(pos , KErrCode) ;
-
- if(!errprm)
- {
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+ _LIT8(KCancell , "CancelNotification") ;
+ _LIT8( KType ,"CancelRequestType") ;
+ _LIT8( KTraceCancel ,"TraceCancel") ;
+ inputlist->AppendL(TLiwGenericParam (KType , TLiwVariant (KTraceCancel))) ;
+
+ locinterface->ExecuteCmdL(KCancell , *inputlist , *outputlist) ;
+
+ pos = 0 ;
+ const TLiwGenericParam *errprm = outputlist->FindFirst(pos , KErrCode) ;
+
+ if(!errprm)
+ {
_LIT(Kerr, "Success/Failure code missing from outputlist") ;
iLog->Log(Kerr) ;
- }
-
-
- TInt ret = KErrGeneral ; //Return Code
- TLiwVariant var = errprm->Value() ;
-
- if(var.AsTInt32() == SErrBadArgumentType )
- {
- ret= KErrNone ;
+ }
+
+
+ TInt ret = KErrGeneral ; //Return Code
+ TLiwVariant var = errprm->Value() ;
+
+ if(var.AsTInt32() == SErrBadArgumentType )
+ {
+ ret= KErrNone ;
}
else
{
- _LIT(KDebugMsg , "Return and expected values are different") ;
+ _LIT(KDebugMsg , "Return and expected values are different") ;
iLog->Log(KDebugMsg) ;
}
-
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
-
-__UHEAP_MARKEND ;
-
-
-
-
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+
+
+
+
return ret ;
-
+
}
/**
@@ -3307,92 +3340,92 @@
*/
TInt CTestProvider :: EmptyCancelGetLocTest(CStifItemParser& /*aItem*/)
{
- _LIT(KLog , "CancellTest") ;
- iLog->Log(KLog) ;
-
- __UHEAP_MARK ;
-
+ _LIT(KLog , "CancellTest") ;
+ iLog->Log(KLog) ;
+
+ __UHEAP_MARK ;
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- return KErrGeneral ;
- }
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ return KErrGeneral ;
+ }
+
pos = 0 ;
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
-
- _LIT8(KCancell , "CancelNotification") ;
- _LIT8( KType ,"CancelRequestType") ;
- _LIT8( KGetLocCancel ,"GetLocCancel") ;
- inputlist->AppendL(TLiwGenericParam (KType , TLiwVariant (KGetLocCancel))) ;
-
- locinterface->ExecuteCmdL(KCancell , *inputlist , *outputlist) ;
-
- pos = 0 ;
- const TLiwGenericParam *errprm = outputlist->FindFirst(pos , KErrCode) ;
-
- if(!errprm)
- {
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+
+ _LIT8(KCancell , "CancelNotification") ;
+ _LIT8( KType ,"CancelRequestType") ;
+ _LIT8( KGetLocCancel ,"GetLocCancel") ;
+ inputlist->AppendL(TLiwGenericParam (KType , TLiwVariant (KGetLocCancel))) ;
+
+ locinterface->ExecuteCmdL(KCancell , *inputlist , *outputlist) ;
+
+ pos = 0 ;
+ const TLiwGenericParam *errprm = outputlist->FindFirst(pos , KErrCode) ;
+
+ if(!errprm)
+ {
_LIT(Kerr, "Success/Failure code missing from outputlist") ;
iLog->Log(Kerr) ;
- }
-
-
- TInt ret = KErrGeneral ;
-
- if((errprm->Value()).AsTInt32() == SErrBadArgumentType)
- {
+ }
+
+
+ TInt ret = KErrGeneral ;
+
+ if((errprm->Value()).AsTInt32() == SErrBadArgumentType)
+ {
ret = KErrNone ;
- }
-
- locinterface->Close() ;
-
- //delete inlist ;
- //Sdelete outlist ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
- __UHEAP_MARKEND ;
-
- return ret ;
-
+ }
+
+ locinterface->Close() ;
+
+ //delete inlist ;
+ //Sdelete outlist ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ __UHEAP_MARKEND ;
+
+ return ret ;
+
}
/**
@@ -3400,46 +3433,46 @@
*/
TInt CTestProvider :: CancelWrongNotification1(CStifItemParser& /*aItem*/)
{
-
-
- _LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
- _LIT(KLog , "StraySignalTest ") ;
- iLog->Log(KTLocTest) ;
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+
+
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+ _LIT(KLog , "StraySignalTest ") ;
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L("Wrong Notification GetLoc cancel") , GetLocWrongCancel ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);;
-
- if(!ret)
- {
-
- _LIT(Klog , "Created the thread ") ;
- iLog->Log(Klog) ;
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
- FunctionThread.Close();
-
- ret = Status.Int() ;
- }
- else
- {
- return ret ;
- }
-
- if(ret == SErrBadArgumentType)
- {
- ret = KErrNone ;
- }
- /*else
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);;
+
+ if(!ret)
+ {
+
+ _LIT(Klog , "Created the thread ") ;
+ iLog->Log(Klog) ;
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ ret = Status.Int() ;
+ }
+ else
+ {
+ return ret ;
+ }
+
+ if(ret == SErrBadArgumentType)
+ {
+ ret = KErrNone ;
+ }
+ /*else
{
ret = KErrGeneral ;
} */
- return ret;
+ return ret;
}
@@ -3450,43 +3483,43 @@
*/
TInt CTestProvider :: CancelWrongNotification2(CStifItemParser& /*aItem*/)
{
-
-
- _LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
- _LIT(KLog , "CancelWrongNotification2 ") ;
- iLog->Log(KTLocTest) ;
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+
+
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+ _LIT(KLog , "CancelWrongNotification2 ") ;
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L("Wrong Notification Trace cancel") , TraceLocWrongCancel ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);;
-
- if(!ret)
- {
-
- _LIT(Klog , "Created the thread ") ;
- iLog->Log(Klog) ;
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
- FunctionThread.Close();
-
- ret = Status.Int() ;
- }
- else
- {
- return ret ;
- }
-
- if(ret == SErrBadArgumentType)
- {
- ret = KErrNone ;
- }
-
- return ret;
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);;
+
+ if(!ret)
+ {
+
+ _LIT(Klog , "Created the thread ") ;
+ iLog->Log(Klog) ;
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ ret = Status.Int() ;
+ }
+ else
+ {
+ return ret ;
+ }
+
+ if(ret == SErrBadArgumentType)
+ {
+ ret = KErrNone ;
+ }
+
+ return ret;
}
@@ -3495,93 +3528,94 @@
*/
TInt CTestProvider :: GetLocationCancel(CStifItemParser& /*aItem*/)
{
-
-
- _LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
- _LIT(KLog , "Getlocationcancel ") ;
- iLog->Log(KTLocTest) ;
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+
+
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+ _LIT(KLog , "Getlocationcancel ") ;
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L("Getlocationcancel ") , GetLocCancel ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);;
-
- if(!ret)
- {
-
- _LIT(Klog , "Created the thread ") ;
- iLog->Log(Klog) ;
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
- FunctionThread.Close();
-
- ret = Status.Int() ;
- }
- else
- {
- return ret ;
- }
-
-
- return ret;
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);;
+
+ if(!ret)
+ {
+
+ _LIT(Klog , "Created the thread ") ;
+ iLog->Log(Klog) ;
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ ret = Status.Int() ;
+ }
+ else
+ {
+ return ret ;
+ }
+
+
+ return ret;
}
-
+
/**
* GetLocation Timeout
*/
TInt CTestProvider :: GetLocationTimedOut(CStifItemParser& /*aItem*/)
{
+ __UHEAP_MARK ;
_LIT(KTLocTest ,"TLocTest");
iLog->Log(KTLocTest) ;
_LIT(KLog , "GetLocationTimedOut ") ;
iLog->Log(KTLocTest) ;
-
- return KErrNone ; //This is a manul test case
+
+ return KErrNone ; //This is a manul test case
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
+
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- return KErrGeneral ;
- }
-
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ return KErrGeneral ;
+ }
+
pos = 0 ;
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
inputlist->Reset();
outputlist->Reset();
@@ -3599,32 +3633,32 @@
locinterface->ExecuteCmdL(CmdBufSet , *inputlist , *outputlist);
UpdateOptsMap->DecRef() ;
-
+
pos = 0 ;
-
+
const TLiwGenericParam *errcode = outputlist->FindFirst(pos , KErrCode) ;
-
+
if(pos == KErrNotFound)
{
- _LIT(KLog , "Success/Error Code is missing ") ;
- iLog->Log(KLog) ;
- return KErrGeneral ;
- }
-
+ _LIT(KLog , "Success/Error Code is missing ") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
pos = (errcode->Value()).AsTInt32() ;
-
+
delete ServiceHandler ;
delete crit ;
locinterface->Close() ;
-
+ __UHEAP_MARKEND ;
if(pos == KErrTimedOut)
{
- return KErrNone ;
- }
-
- _LIT(Kerr , "Time out value not set correctly") ;
+ return KErrNone ;
+ }
+
+ _LIT(Kerr , "Time out value not set correctly") ;
return KErrNone ;
-
+
}
/**
@@ -3632,49 +3666,49 @@
*/
TInt CTestProvider :: TraceLocationCancel(CStifItemParser& /*aItem*/)
{
-
-
- _LIT(KTLocTest ,"TLocTest");
- iLog->Log(KTLocTest) ;
- _LIT(KLog , "Getlocationcancel ") ;
- iLog->Log(KTLocTest) ;
-
- TRequestStatus Status = KRequestPending ;
- RThread FunctionThread ;
-
+
+
+ _LIT(KTLocTest ,"TLocTest");
+ iLog->Log(KTLocTest) ;
+ _LIT(KLog , "Getlocationcancel ") ;
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
TInt ret = FunctionThread.Create(_L("Getlocationcancel ") , TraceLocCancel ,KDefaultStackSize ,
- KMinHeapSize , 0x5000 ,(TAny *) NULL);;
-
- if(!ret)
- {
-
- _LIT(Klog , "Created the thread ") ;
- iLog->Log(Klog) ;
- FunctionThread.Logon(Status) ;
- FunctionThread.Resume() ;
-
- User :: WaitForRequest (Status) ;
- FunctionThread.Close();
-
- ret = Status.Int() ;
- }
- else
- {
- return ret ;
- }
-
-
- return ret;
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);;
+
+ if(!ret)
+ {
+
+ _LIT(Klog , "Created the thread ") ;
+ iLog->Log(Klog) ;
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ ret = Status.Int() ;
+ }
+ else
+ {
+ return ret ;
+ }
+
+
+ return ret;
}
/**
*Math Operation Find distance : Position based parameter
*/
- TInt CTestProvider :: FindDistanceAgain(CStifItemParser& /*aItem*/)
- {
- __UHEAP_MARK;
- TInt start = User::CountAllocCells();
- CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+TInt CTestProvider :: FindDistanceAgain(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK;
+ TInt start = User::CountAllocCells();
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
// Input and output parameter list
CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
@@ -3712,56 +3746,56 @@
}
MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
-
-
+
+
+
TBuf8<20>CmdBuf(KRequestCalculate) ;
- CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
-
- TLiwGenericParam requesttype(KNullDesC8 , TLiwVariant(KRequestBearingTo)) ;
- InputList->AppendL(requesttype) ;
-
- //Inserting first input param
- CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
- TReal64 slongitude = 22;
- SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
- TReal64 slatitude = 88;
- SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
- TReal64 saltitude = 1;
- SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(slatitude));
-
- TLiwGenericParam scoordinate(KNullDesC8,TLiwVariant(SourceCoordinate));
- InputList->AppendL(scoordinate) ;
- SourceCoordinate->DecRef() ;
-
-
-
- //Inserting 2nd input param
- CLiwDefaultMap* DestCoordinate = CLiwDefaultMap::NewL();
- TReal64 dlongitude = 13;
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ TLiwGenericParam requesttype(KNullDesC8 , TLiwVariant(KRequestBearingTo)) ;
+ InputList->AppendL(requesttype) ;
+
+ //Inserting first input param
+ CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
+ TReal64 slongitude = 22;
+ SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
+ TReal64 slatitude = 88;
+ SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
+ TReal64 saltitude = 1;
+ SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(slatitude));
+
+ TLiwGenericParam scoordinate(KNullDesC8,TLiwVariant(SourceCoordinate));
+ InputList->AppendL(scoordinate) ;
+ SourceCoordinate->DecRef() ;
+
+
+
+ //Inserting 2nd input param
+ CLiwDefaultMap* DestCoordinate = CLiwDefaultMap::NewL();
+ TReal64 dlongitude = 13;
DestCoordinate->InsertL(KLongitudeKey,TLiwVariant(dlongitude));
- TReal64 dlatitude = 77;
-
-
- DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
- TReal64 daltitude = 1;
- DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(dlatitude));
-
- TLiwGenericParam dcoordinate(KNullDesC8,TLiwVariant(DestCoordinate));
- InputList->AppendL(dcoordinate) ;
- DestCoordinate->DecRef() ;
-
-
- CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
-
-
- CmdBuf = KRequestCalculate ;
+ TReal64 dlatitude = 77;
+
+
+ DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
+ TReal64 daltitude = 1;
+ DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(dlatitude));
+
+ TLiwGenericParam dcoordinate(KNullDesC8,TLiwVariant(DestCoordinate));
+ InputList->AppendL(dcoordinate) ;
+ DestCoordinate->DecRef() ;
+
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+ CmdBuf = KRequestCalculate ;
locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
- pos = 0;
+ pos = 0;
const TLiwGenericParam* param = OutParmList->FindFirst(pos, KErrorCode);
pos = 0;
@@ -3802,490 +3836,30 @@
locinterface->Close() ;
OutParmList->Reset();
InputList->Reset();
- delete OutParmList ;
- delete InputList ;
+ delete OutParmList ;
+ delete InputList ;
delete ServiceHandler ;
a.ResetAndDestroy() ;
-
+
TInt end = User::CountAllocCells();
- __UHEAP_MARKEND ;
-
+ __UHEAP_MARKEND ;
+
return KErrNone ;
-
-
-
-
- }
+
+
+
+
+ }
/**
* Math operation BearingTo Test
*/
-
- TInt CTestProvider ::BearingToTest(CStifItemParser& /*aItem*/)
- {
- __UHEAP_MARK ;
-
- CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
- // Input and output parameter list
- CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
- CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- return KErrGeneral ;
- }
-
- pos = 0 ;
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
- TBuf8<20>CmdBuf(KRequestCalculate) ;
-
- CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
-
- TLiwGenericParam requesttype(KMathRequest , TLiwVariant(KRequestBearingTo)) ;
- InputList->AppendL(requesttype) ;
-
- //Inserting first input param
- CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
- TReal64 slongitude = 22;
- SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
- TReal64 slatitude = 88;
- SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
- TReal64 saltitude = 1;
- SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(slatitude));
-
- TLiwGenericParam scoordinate(KDistanceParmSource,TLiwVariant(SourceCoordinate));
- InputList->AppendL(scoordinate) ;
- SourceCoordinate->DecRef() ;
-
-
-
- //Inserting 2nd input param
- CLiwMap* DestCoordinate = CLiwDefaultMap::NewL();
- TReal64 dlongitude = 13;
- DestCoordinate->InsertL(KLongitudeKey,TLiwVariant(dlongitude));
- TReal64 dlatitude = 77;
- DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
- TReal64 daltitude = 1;
- DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(dlatitude));
-
- TLiwGenericParam dcoordinate(KDistanceParmDestination,TLiwVariant(DestCoordinate));
- InputList->AppendL(dcoordinate) ;
- DestCoordinate->DecRef() ;
-
-
- CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
-
-
- CmdBuf = KRequestCalculate ;
-
- locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
-
-
- pos = 0;
- const TLiwGenericParam* param = OutParmList->FindFirst(pos, KErrorCode);
-
- pos = 0;
- const TLiwGenericParam* resultparam = OutParmList->FindFirst(pos, KMathOpResult);
- TLiwVariant resultvariant = resultparam->Value();
- TReal32 bearingTo = resultvariant.AsTReal();
-
-
-
-
- //Logging result into a file
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> Buffer(_L8("BearingTo = ")) ;
- LogSession.Connect() ;
-
- if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
- }
-
- TInt End = 0 ;
-
- LogFile.Seek(ESeekEnd , End) ; //Seek to end of the file before writing
-
- TBuf8<50> num ;
- TRealFormat format ;
-
- num.Num(bearingTo , format) ;
-
-
- LogFile.Write(_L8("BearingTo= "));
- LogFile.Write(num) ;
- LogFile.Write(_L8("\n")) ;
- LogFile.Close() ;
- LogSession.Close() ;
-
- delete OutParmList ;
- dcoordinate.Reset() ;
- scoordinate.Reset() ;
- delete InputList ;
- locinterface->Close() ;
- inputlist->Reset() ;
- outputlist->Reset() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
- a.Close() ;
- __UHEAP_MARKEND ;
- return KErrNone ;
-
-
- }
-
- TInt CTestProvider ::FindDistance(CStifItemParser& /*aItem*/)
+
+TInt CTestProvider ::BearingToTest(CStifItemParser& /*aItem*/)
{
- __UHEAP_MARK ;
- CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
- // Input and output parameter list
- CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
- CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- return KErrGeneral ;
- }
-
- pos = 0 ;
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
- //First set the identity information
-
- ;
- TBuf8<20>CmdBufSet(KRequestCalculate) ;
- outputlist->Reset() ;
- inputlist->Reset() ;
-
- CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
-
- TLiwGenericParam requesttype(KMathRequest , TLiwVariant(KRequestDistance)) ;
- InputList->AppendL(requesttype) ;
-
-
-
- //Inserting first input param
- CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
- TReal64 slongitude = 71.03;
- SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
- TReal64 slatitude = 42.37;
- SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
- TReal64 saltitude = 1;
- SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(slatitude));
-
- TLiwGenericParam scoordinate(KDistanceParmSource,TLiwVariant(SourceCoordinate));
- InputList->AppendL(scoordinate) ;
- SourceCoordinate->DecRef() ;
-
-
-
- //Inserting 2nd input param
- CLiwMap* DestCoordinate = CLiwDefaultMap::NewL();
- TReal64 dlongitude = 83.02;
- DestCoordinate->InsertL(KLongitudeKey,TLiwVariant(dlongitude));
- TReal64 dlatitude = 42.42;
- DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
- TReal64 daltitude = 1;
- DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(dlatitude));
-
- TLiwGenericParam dcoordinate(KDistanceParmDestination,TLiwVariant(DestCoordinate));
- InputList->AppendL(dcoordinate) ;
- DestCoordinate->DecRef() ;
-
- CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
-
-
- CmdBufSet = KRequestCalculate ;
-
- locinterface->ExecuteCmdL(CmdBufSet , *InputList , *OutParmList);
-
-
- pos = 0;
- const TLiwGenericParam* param = OutParmList->FindFirst(pos, KErrorCode);
-
-
- pos = 0;
- const TLiwGenericParam* resultparam = OutParmList->FindFirst(pos, KMathOpResult);
- TLiwVariant resultvariant = resultparam->Value();
- TReal64 distance = resultvariant.AsTReal();
-
-
-
-
- //Logging result into a file
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> Buffer(_L8("Distance = ")) ;
- LogSession.Connect() ;
-
- if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
-
- }
-
- TInt End = 0 ;
-
- LogFile.Seek(ESeekEnd , End) ; //Seek to end of the file before writing
-
- TBuf8<50> num ;
- TRealFormat format ;
- //TReal64 Val = aPosition.Latitude() ;
- num.Num(distance , format) ;
-
- //Logging Latitude
- LogFile.Write(_L8("distance = "));
- LogFile.Write(num) ;
- LogFile.Write(_L8("\n")) ;
- LogFile.Close() ;
- LogSession.Close() ;
-
- delete InputList ;
- delete OutParmList ;
- locinterface->Close() ;
- delete ServiceHandler ;
- a.ResetAndDestroy() ;
-
- __UHEAP_MARKEND ;
- return KErrNone ;
-
-
-
-
- }
-
-TInt CTestProvider ::GetLocationUpdateOpts(CStifItemParser& /*aItem*/)
- {
-
- __UHEAP_MARK;
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> data ;
- TRealFormat format ;
- LogSession.Connect() ;
- _LIT8(KLog , "GetLocationUpdateOPts") ;
- iLog->Log(KLog) ;
-
-
-
- if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
- }
-
- CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
-
- // Input and output parameter list
- CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
- CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
-
-
-
-
- CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
-
-
- crit->SetServiceClass(TUid::Uid(KLiwClassBase));
-
- RCriteriaArray a;
- a.AppendL(crit);
-
- ServiceHandler->AttachL(a) ;
- ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
-
-
-
-
- TInt pos = 0;
-
- const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
-
- if(!errorprm)
- {
- return KErrGeneral ;
- }
-
- pos = 0 ;
- const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
-
- if(!genericparm)
- {
-
- return KErrGeneral ;
- }
-
- MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
- TBuf8<20>CmdBuf(KCmdGetLocation) ;
-
- CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
-
- //Append LocationInformation Category
- TLiwGenericParam informationCategory(KLocationInfoCategory , TLiwVariant(KLocationBasicinfo)) ;
- InputList->AppendL(informationCategory) ;
-
- //Appending update options
- CLiwMap* updateoptionMap = CLiwDefaultMap::NewL();
-
- TInt32 updateInterval = 30000;
-
- updateoptionMap->InsertL(KUpdateOptionInterval,TLiwVariant(updateInterval));
-
- TInt32 updateTimeOut = 10000;
- updateoptionMap->InsertL(KUpdateOptionTimeOut,TLiwVariant(updateTimeOut));
-
- TInt32 updateMaxAge = 2000;
- updateoptionMap->InsertL(KUpdateOptionMaxAge,TLiwVariant(updateMaxAge));
-
- TLiwGenericParam updateOption(KUpdateOptionMap,TLiwVariant(updateoptionMap));
- InputList->AppendL(updateOption) ;
-
- CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
-
-
-
-
- locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
-
-
- pos = 0;
- const TLiwGenericParam* param = OutParmList->FindFirst(pos, KErrorCode);
-
-
- pos = 0;
- const TLiwGenericParam* resultparam = OutParmList->FindFirst(pos, KLocationMap);
- TLiwVariant resultvariant = resultparam->Value();
-
- const CLiwMap *LocMap = resultvariant.AsMap() ;
-
- TLiwVariant PosVariant ;
-
- LocMap->FindL(KLongitudeKey , PosVariant) ;
-
-
- TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
- data.Num(LongData , format) ;
- LogFile.Write(_L8("\n")) ;
- LogFile.Write(_L8("Logitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
-
- TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
- data.Num(LatData , format) ;
- LogFile.Write(_L8(" Latitude = ")) ;
- LogFile.Write(data) ;
-
- LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
- TReal32 AltData = PosVariant.AsTReal() ;
- data.Num(AltData , format) ;
-
- LogFile.Write(_L8(" Altitude = ")) ;
- LogFile.Write(data) ;
- LogFile.Close() ;
- locinterface->Close() ;
- LogSession.Close() ;
-
- delete ServiceHandler ;
- InputList->Reset();
- OutParmList->Reset();
- delete InputList ;
- delete OutParmList ;
- __UHEAP_MARKEND;
- return KErrNone ;
-
- }
-
-
-
-void FillCoordinatesL ( TCoordinate &aCoordinate , const CLiwMap *aMap )
- {
- TLiwVariant longitudevar ;
- TLiwVariant latitudevar ;
- TLiwVariant altitudevar ;
-
- aMap->FindL(KLongitudeKey , longitudevar) ;
- aMap->FindL(KLatitudeKey , latitudevar) ;
- aMap->FindL(KAltitudeKey , altitudevar ) ;
-
- TReal64 latitude = (TReal64)latitudevar.AsTReal() ;
- TReal64 longitude = (TReal64)longitudevar.AsTReal() ;
- TReal32 altitude = (TReal32)altitudevar.AsTReal() ;
-
- aCoordinate.SetCoordinate( latitude , longitude , altitude) ;
-
-
- }
-
-/**
- * Math Function test Move coordinates
- */
-
- TInt CTestProvider :: MoveCoordinates(CStifItemParser& /*aItem*/)
- {
-
- __UHEAP_MARK ;
+ __UHEAP_MARK ;
+
CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
// Input and output parameter list
@@ -4328,129 +3902,3650 @@
}
MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
-
+ TBuf8<20>CmdBuf(KRequestCalculate) ;
+
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ TLiwGenericParam requesttype(KMathRequest , TLiwVariant(KRequestBearingTo)) ;
+ InputList->AppendL(requesttype) ;
+
+ //Inserting first input param
+ CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
+ TReal64 slongitude = 22;
+ SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
+ TReal64 slatitude = 88;
+ SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
+ TReal64 saltitude = 1;
+ SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(slatitude));
+
+ TLiwGenericParam scoordinate(KDistanceParmSource,TLiwVariant(SourceCoordinate));
+ InputList->AppendL(scoordinate) ;
+ SourceCoordinate->DecRef() ;
+
+
+
+ //Inserting 2nd input param
+ CLiwMap* DestCoordinate = CLiwDefaultMap::NewL();
+ TReal64 dlongitude = 13;
+ DestCoordinate->InsertL(KLongitudeKey,TLiwVariant(dlongitude));
+ TReal64 dlatitude = 77;
+ DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
+ TReal64 daltitude = 1;
+ DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(dlatitude));
+
+ TLiwGenericParam dcoordinate(KDistanceParmDestination,TLiwVariant(DestCoordinate));
+ InputList->AppendL(dcoordinate) ;
+ DestCoordinate->DecRef() ;
+
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+ CmdBuf = KRequestCalculate ;
+
+ locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
+
+
+ pos = 0;
+ const TLiwGenericParam* param = OutParmList->FindFirst(pos, KErrorCode);
+
+ pos = 0;
+ const TLiwGenericParam* resultparam = OutParmList->FindFirst(pos, KMathOpResult);
+ TLiwVariant resultvariant = resultparam->Value();
+ TReal32 bearingTo = resultvariant.AsTReal();
+
+
+
+
+ //Logging result into a file
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> Buffer(_L8("BearingTo = ")) ;
+ LogSession.Connect() ;
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
+ }
+
+ TInt End = 0 ;
+
+ LogFile.Seek(ESeekEnd , End) ; //Seek to end of the file before writing
+
+ TBuf8<50> num ;
+ TRealFormat format ;
+
+ num.Num(bearingTo , format) ;
+
+
+ LogFile.Write(_L8("BearingTo= "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ delete OutParmList ;
+ dcoordinate.Reset() ;
+ scoordinate.Reset() ;
+ delete InputList ;
+ locinterface->Close() ;
+ inputlist->Reset() ;
+ outputlist->Reset() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+ }
+
+TInt CTestProvider ::FindDistance(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ return KErrGeneral ;
+ }
+
+ pos = 0 ;
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+ //First set the identity information
+
+ ;
+ TBuf8<20>CmdBufSet(KRequestCalculate) ;
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ TLiwGenericParam requesttype(KMathRequest , TLiwVariant(KRequestDistance)) ;
+ InputList->AppendL(requesttype) ;
+
+
+
+ //Inserting first input param
+ CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
+ TReal64 slongitude = 71.03;
+ SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
+ TReal64 slatitude = 42.37;
+ SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
+ TReal64 saltitude = 1;
+ SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(slatitude));
+
+ TLiwGenericParam scoordinate(KDistanceParmSource,TLiwVariant(SourceCoordinate));
+ InputList->AppendL(scoordinate) ;
+ SourceCoordinate->DecRef() ;
+
+
+
+ //Inserting 2nd input param
+ CLiwMap* DestCoordinate = CLiwDefaultMap::NewL();
+ TReal64 dlongitude = 83.02;
+ DestCoordinate->InsertL(KLongitudeKey,TLiwVariant(dlongitude));
+ TReal64 dlatitude = 42.42;
+ DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
+ TReal64 daltitude = 1;
+ DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(dlatitude));
+
+ TLiwGenericParam dcoordinate(KDistanceParmDestination,TLiwVariant(DestCoordinate));
+ InputList->AppendL(dcoordinate) ;
+ DestCoordinate->DecRef() ;
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+ CmdBufSet = KRequestCalculate ;
+
+ locinterface->ExecuteCmdL(CmdBufSet , *InputList , *OutParmList);
+
+
+ pos = 0;
+ const TLiwGenericParam* param = OutParmList->FindFirst(pos, KErrorCode);
+
+
+ pos = 0;
+ const TLiwGenericParam* resultparam = OutParmList->FindFirst(pos, KMathOpResult);
+ TLiwVariant resultvariant = resultparam->Value();
+ TReal64 distance = resultvariant.AsTReal();
+
+
+
+
+ //Logging result into a file
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> Buffer(_L8("Distance = ")) ;
+ LogSession.Connect() ;
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
+
+ }
+
+ TInt End = 0 ;
+
+ LogFile.Seek(ESeekEnd , End) ; //Seek to end of the file before writing
+
+ TBuf8<50> num ;
+ TRealFormat format ;
+ //TReal64 Val = aPosition.Latitude() ;
+ num.Num(distance , format) ;
+
+ //Logging Latitude
+ LogFile.Write(_L8("distance = "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ delete InputList ;
+ delete OutParmList ;
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+
+
+ }
+
+TInt CTestProvider ::GetLocationUpdateOpts(CStifItemParser& /*aItem*/)
+ {
+
+ __UHEAP_MARK;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+ LogSession.Connect() ;
+ _LIT8(KLog , "GetLocationUpdateOPts") ;
+ iLog->Log(KLog) ;
+
+
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
+ }
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ return KErrGeneral ;
+ }
+
+ pos = 0 ;
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ //Append LocationInformation Category
+ TLiwGenericParam informationCategory(KLocationInfoCategory , TLiwVariant(KLocationBasicinfo)) ;
+ InputList->AppendL(informationCategory) ;
+
+ //Appending update options
+ CLiwMap* updateoptionMap = CLiwDefaultMap::NewL();
+
+ TInt32 updateInterval = 30000;
+
+ updateoptionMap->InsertL(KUpdateOptionInterval,TLiwVariant(updateInterval));
+
+ TInt32 updateTimeOut = 10000;
+ updateoptionMap->InsertL(KUpdateOptionTimeOut,TLiwVariant(updateTimeOut));
+
+ TInt32 updateMaxAge = 2000;
+ updateoptionMap->InsertL(KUpdateOptionMaxAge,TLiwVariant(updateMaxAge));
+
+ TLiwGenericParam updateOption(KUpdateOptionMap,TLiwVariant(updateoptionMap));
+ InputList->AppendL(updateOption) ;
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
+
+
+ pos = 0;
+ const TLiwGenericParam* param = OutParmList->FindFirst(pos, KErrorCode);
+
+
+ pos = 0;
+ const TLiwGenericParam* resultparam = OutParmList->FindFirst(pos, KLocationMap);
+ TLiwVariant resultvariant = resultparam->Value();
+
+ const CLiwMap *LocMap = resultvariant.AsMap() ;
+
+ TLiwVariant PosVariant ;
+
+ LocMap->FindL(KLongitudeKey , PosVariant) ;
+
+
+ TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
+ data.Num(LongData , format) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Write(_L8("Logitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
+
+ TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
+ data.Num(LatData , format) ;
+ LogFile.Write(_L8(" Latitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
+ TReal32 AltData = PosVariant.AsTReal() ;
+ data.Num(AltData , format) ;
+
+ LogFile.Write(_L8(" Altitude = ")) ;
+ LogFile.Write(data) ;
+ LogFile.Close() ;
+ locinterface->Close() ;
+ LogSession.Close() ;
+
+ delete ServiceHandler ;
+ InputList->Reset();
+ OutParmList->Reset();
+ delete InputList ;
+ delete OutParmList ;
+ __UHEAP_MARKEND;
+ return KErrNone ;
+
+ }
+
+
+
+void FillCoordinatesL ( TCoordinate &aCoordinate , const CLiwMap *aMap )
+ {
+ __UHEAP_MARK ;
+ TLiwVariant longitudevar ;
+ TLiwVariant latitudevar ;
+ TLiwVariant altitudevar ;
+
+ aMap->FindL(KLongitudeKey , longitudevar) ;
+ aMap->FindL(KLatitudeKey , latitudevar) ;
+ aMap->FindL(KAltitudeKey , altitudevar ) ;
+
+ TReal64 latitude = (TReal64)latitudevar.AsTReal() ;
+ TReal64 longitude = (TReal64)longitudevar.AsTReal() ;
+ TReal32 altitude = (TReal32)altitudevar.AsTReal() ;
+
+ aCoordinate.SetCoordinate( latitude , longitude , altitude) ;
+
+ __UHEAP_MARKEND ;
+ }
+
+/**
+ * Math Function test Move coordinates
+ */
+
+TInt CTestProvider :: MoveCoordinates(CStifItemParser& /*aItem*/)
+ {
+
+ __UHEAP_MARK ;
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ return KErrGeneral ;
+ }
+
+ pos = 0 ;
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
TBuf8<20>CmdBuf(KRequestCalculate) ;
outputlist->Reset() ;
inputlist->Reset() ;
- CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
-
- TLiwGenericParam requesttype(KMathRequest , TLiwVariant(KRequestMove)) ;
- InputList->AppendL(requesttype) ;
-
-
- //Inserting first input param
- CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
- TReal64 slongitude = 22;
- SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
- TReal64 slatitude = 88;
- SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
-
- TReal64 saltitude = 1;
- SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(saltitude));
-
-
-
- TLiwGenericParam scoordinate(KDistanceParmSource,TLiwVariant(SourceCoordinate));
- InputList->AppendL(scoordinate) ;
- SourceCoordinate->DecRef() ;
-
-
-
- TReal32 distanceToMove = 345;
- TReal32 bearingToMove = 45;
-
-
- //Inserting distance by which coordinate should be moved
- TLiwVariant distanceVal((TReal)distanceToMove);
- TLiwGenericParam distanceParam(KDistanceMove,distanceVal);
- InputList->AppendL(distanceParam);
-
- //Inserting bearing by which coordinate should be moved
- TLiwVariant bearingVal((TReal)bearingToMove);
- TLiwGenericParam bearingParam(KBearingMove,bearingVal);
- InputList->AppendL(bearingParam);
-
-
-
-
-
- CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
-
-
-
-
- locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
-
-
-
-
-
- TInt mathindex = 0;
-
- // calculation
- const TLiwGenericParam *smapparam = OutParmList->FindFirst(mathindex , KLocationMap) ;
- TLiwVariant mapVariant= smapparam->Value() ;
- const CLiwMap *map = mapVariant.AsMap() ;
- TCoordinate source ;
-
- FillCoordinatesL(source , map) ;
-
- TReal64 longitudeInputVal = source.Longitude();
- TReal64 latitudeInputVal = source.Latitude();
- TReal64 altitudeInputVal = source.Altitude();
-
-
- //Logging result into a file
- RFile LogFile ;
- RFs LogSession ;
- TBuf8<50> Buffer(_L8("Longitude = ")) ;
- LogSession.Connect() ;
-
- if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
- {
- LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
-
- }
-
- TInt End = 0 ;
-
- LogFile.Seek(ESeekEnd , End) ; //Seek to end of the file before writing
-
- TBuf8<50> num ;
- TRealFormat format ;
-
- num.Num(longitudeInputVal, format) ;
-
- //Logging
- LogFile.Write(_L8("Longitude = "));
- LogFile.Write(num) ;
- LogFile.Write(_L8("\n")) ;
- //LogFile.Seek(ESeekEnd , End) ;
- num.Num(latitudeInputVal, format) ;
- LogFile.Write(_L8("Latitude = "));
- LogFile.Write(num) ;
- LogFile.Write(_L8("\n")) ;
- num.Num(altitudeInputVal, format) ;
- LogFile.Write(_L8("altitude = "));
- LogFile.Write(num) ;
- LogFile.Write(_L8("\n")) ;
- LogFile.Close() ;
- LogSession.Close() ;
-
- delete OutParmList ;
- delete InputList ;
- locinterface->Close() ;
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ TLiwGenericParam requesttype(KMathRequest , TLiwVariant(KRequestMove)) ;
+ InputList->AppendL(requesttype) ;
+
+
+ //Inserting first input param
+ CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
+ TReal64 slongitude = 22;
+ SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
+ TReal64 slatitude = 88;
+ SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
+
+ TReal64 saltitude = 1;
+ SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(saltitude));
+
+
+
+ TLiwGenericParam scoordinate(KDistanceParmSource,TLiwVariant(SourceCoordinate));
+ InputList->AppendL(scoordinate) ;
+ SourceCoordinate->DecRef() ;
+
+
+
+ TReal32 distanceToMove = 345;
+ TReal32 bearingToMove = 45;
+
+
+ //Inserting distance by which coordinate should be moved
+ TLiwVariant distanceVal((TReal)distanceToMove);
+ TLiwGenericParam distanceParam(KDistanceMove,distanceVal);
+ InputList->AppendL(distanceParam);
+
+ //Inserting bearing by which coordinate should be moved
+ TLiwVariant bearingVal((TReal)bearingToMove);
+ TLiwGenericParam bearingParam(KBearingMove,bearingVal);
+ InputList->AppendL(bearingParam);
+
+
+
+
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
+
+
+
+
+
+ TInt mathindex = 0;
+
+ // calculation
+ const TLiwGenericParam *smapparam = OutParmList->FindFirst(mathindex , KLocationMap) ;
+ TLiwVariant mapVariant= smapparam->Value() ;
+ const CLiwMap *map = mapVariant.AsMap() ;
+ TCoordinate source ;
+
+ FillCoordinatesL(source , map) ;
+
+ TReal64 longitudeInputVal = source.Longitude();
+ TReal64 latitudeInputVal = source.Latitude();
+ TReal64 altitudeInputVal = source.Altitude();
+
+
+ //Logging result into a file
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> Buffer(_L8("Longitude = ")) ;
+ LogSession.Connect() ;
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
+
+ }
+
+ TInt End = 0 ;
+
+ LogFile.Seek(ESeekEnd , End) ; //Seek to end of the file before writing
+
+ TBuf8<50> num ;
+ TRealFormat format ;
+
+ num.Num(longitudeInputVal, format) ;
+
+ //Logging
+ LogFile.Write(_L8("Longitude = "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ //LogFile.Seek(ESeekEnd , End) ;
+ num.Num(latitudeInputVal, format) ;
+ LogFile.Write(_L8("Latitude = "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ num.Num(altitudeInputVal, format) ;
+ LogFile.Write(_L8("altitude = "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ delete OutParmList ;
+ delete InputList ;
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+ }
+
+
+
+
+
+
+TInt CTestProvider :: GetLastLocation(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create notifications log file") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CTGetLocation") ;
+ iLog->Log(KLog) ;
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+ _LIT(KLog , "Interface not found");
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ //TBuf8<20>CmdBuf(KCmdGetLocation) ;
+ TBuf8<20>CmdBuf(_L8("GetLastPosition"));
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog, "Success/Failure state not known") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+ if((ErrorParm->Value()).AsTInt32() )
+ {
+ _LIT(KLog , "ExecutecmdL failed ");
+ iLog->Log(KLog) ;
+ return (ErrorParm->Value()).AsTInt32() ;
+ }
+
+
+
+ TInt index = 0 ;
+
+ const TLiwGenericParam *GenericParam = outputlist->FindFirst(index , KLocationMap);
+
+
+ if(!GenericParam)
+ {
+ _LIT(Klog, "Out Param not found") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ; //Param Error
+ }
+
+ TLiwVariant Variant ;
+
+ Variant = GenericParam->Value() ;
+ const CLiwMap *LocMap = Variant.AsMap() ;
+
+ TLiwVariant PosVariant ;
+
+ LocMap->FindL(KLongitudeKey , PosVariant) ;
+ TReal64 LongData = (TReal64)PosVariant.AsTReal() ; //Longitude
+ data.Num(LongData , format) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Write(_L8("Logitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KLatitudeKey ,PosVariant) ; //Latitude
+
+ TReal64 LatData = (TReal64)PosVariant.AsTReal() ;
+ data.Num(LatData , format) ;
+ LogFile.Write(_L8(" Latitude = ")) ;
+ LogFile.Write(data) ;
+
+ LocMap->FindL(KAltitudeKey , PosVariant) ; //Altitude
+ TReal32 AltData = PosVariant.AsTReal() ;
+ data.Num(AltData , format) ;
+
+ LogFile.Write(_L8(" Altitude = ")) ;
+ LogFile.Write(data) ;
+
+
+ TLiwVariant Speed ;
+
+ index = LocMap->FindL(_L8("HorizontalSpeed") , Speed ) ;
+
+ if(index )
+ {
+
+ TReal speed = Speed.AsTReal() ;
+
+ data.Num(speed , format) ;
+
+ LogFile.Write(_L8("Speed = ")) ;
+ LogFile.Write(data) ;
+
+ }
+ TLiwVariant Accuracy;
+ index = LocMap->FindL(_L8("HorizontalAccuracy"),Accuracy);
+
+ if(index)
+ {
+ TReal32 AccuracyVal = Accuracy.AsTReal();
+ data.Num(AccuracyVal , format) ;
+
+ LogFile.Write(_L8("Horizontal Acc = ")) ;
+ LogFile.Write(data) ;
+ }
+
+ Accuracy.Reset();
+ index = LocMap->FindL(_L8("VerticalAccuracy"),Accuracy);
+
+ if(index)
+ {
+ TReal32 AccuracyVal = Accuracy.AsTReal();
+ data.Num(AccuracyVal , format) ;
+
+ LogFile.Write(_L8("Vertical Acc = ")) ;
+ LogFile.Write(data) ;
+ }
+
+ TLiwVariant SpeedError ;
+ index = LocMap->FindL( _L8("HorizontalSpeedError") , SpeedError) ;
+
+
+ if(index )
+ {
+
+ TReal speed = SpeedError.AsTReal() ;
+
+ data.Num(speed , format) ;
+
+ LogFile.Write(_L8("Speed = ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+ index = 0 ;
+
+ TLiwVariant SatInfo ;
+
+ index = LocMap->FindL(_L8("SatelliteNumView") , SatInfo) ;
+
+ if(index )
+ {
+
+ TInt satnumView = SatInfo.AsTInt32() ;
+ data.Num(satnumView , format);
+
+ LogFile.Write(_L8("Satellite information")) ;
+
+ LogFile.Write(_L8("Number of visible satellites ")) ;
+ LogFile.Write(data) ;
+ }
+
+ index = 0 ;
+
+ TLiwVariant SatInfoview ;
+
+ index = LocMap->FindL( _L8("SatelliteNumViewUsed") , SatInfoview) ;
+ if(index )
+ {
+
+
+ TInt satnumViewUsed = SatInfoview.AsTInt32() ;
+ data.Num(satnumViewUsed , format);
+
+ LogFile.Write(_L8("\nSatellite information")) ;
+
+ LogFile.Write(_L8("\nSatelliteNumViewUsed")) ;
+ LogFile.Write(data) ;
+ }
+
+ index = 0 ;
+
+ TInt Headinginfo = 0 ;
+
+ TLiwVariant Heading ;
+ Headinginfo = LocMap->FindL(_L8("Heading") ,Heading) ;
+
+ if(Headinginfo)
+ {
+
+
+ TReal heading = Heading.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nHeading")) ;
+ LogFile.Write(data) ;
+ }
+
+
+ if(Headinginfo)
+ {
+ TLiwVariant HeadingError ;
+ index = LocMap->FindL( _L8("HeadingError") , HeadingError ) ;
+
+ if(index)
+ {
+
+
+ TReal heading = HeadingError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+ TLiwVariant MagneticHeading ;
+ index = LocMap->FindL( _L8("MagneticHeading") , MagneticHeading) ;
+
+ if(index)
+ {
+
+
+ TReal heading = MagneticHeading.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\n MagneticHeading ")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ TLiwVariant MagneticHeadingError ;
+ index = LocMap->FindL(_L8("MagneticHeadingError") ,MagneticHeadingError) ;
+
+ if(index)
+ {
+
+
+ TReal heading = MagneticHeadingError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ } //End of Heading
+
+
+
+ TLiwVariant TrueCourse ;
+ index = LocMap->FindL( _L8("TrueCourse") , TrueCourse ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = TrueCourse.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\nDirection ")) ;
+
+ LogFile.Write(_L8("\n TrueCourse Error")) ;
+ LogFile.Write(data) ;
+
+
+
+ TLiwVariant TrueCourseError ;
+ index = LocMap->FindL( _L8("TrueCourseError") , TrueCourseError ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = TrueCourseError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticHeading Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ }
+
+
+ TLiwVariant MagneticCourse ;
+ index = LocMap->FindL(_L8("MagneticCourse") , MagneticCourse ) ;
+
+
+ if(index)
+ {
+
+ TReal heading = MagneticCourse.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\nMagneticCourse ")) ;
+ LogFile.Write(data) ;
+
+
+
+ TLiwVariant MagneticCourseError ;
+ index = LocMap->FindL(_L8("MagneticCourseError") ,MagneticCourseError ) ;
+
+ if( index)
+ {
+
+
+ TReal heading = MagneticCourseError.AsTReal() ;
+ data.Num(heading , format);
+
+ LogFile.Write(_L8("\ncompass information")) ;
+
+ LogFile.Write(_L8("\n MagneticCourseError Error")) ;
+ LogFile.Write(data) ;
+
+ }
+
+
+ }
+
+
+
+ TLiwVariant NmeaNum ;
+ index = LocMap->FindL(_L8("NMEASentence") , NmeaNum ) ;
+
+
+ if(index)
+ {
+
+ TInt32 NMEASentence = NmeaNum.AsTInt32() ;
+ data.Num(NMEASentence , format);
+
+ LogFile.Write(_L8("\nNMEA Information")) ;
+
+ LogFile.Write(_L8("\n number of NMEA Sentences ")) ;
+ LogFile.Write(data) ;
+
+ index = 0 ;
+
+ const TLiwGenericParam *MagneticCourseError = outputlist->FindFirst(index , _L8("NMEASentenceStart") ) ;
+
+ if(-1 != index)
+ {
+ Variant = MagneticCourseError->Value() ;
+
+
+ }
+
+
+ }
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
delete ServiceHandler ;
a.ResetAndDestroy() ;
a.Close() ;
- __UHEAP_MARKEND ;
- return KErrNone ;
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+
+ }
+
+
+TInt CTestProvider ::GetLocationMultiple(CStifItemParser& /*aItem*/)
+ {
+
+
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT(LogFileNameCancel , "C:\\cancelinvalid.txt") ;
+
+ if(LogFile.Open(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create log file\n") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CancelWithInvalidTransactionID\n") ;
+ data.Copy(KLog);
+ LogFile.Write(data) ;
+
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ ASyncLocCBF* callBack = new(ELeave) ASyncLocCBF;
+ //Make the first call
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist\n") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+ return KErrGeneral ;
+ }
+
+ TInt reqerror = (ErrorParm->Value()).AsTInt32();
+ _LIT(Klog , "ERRor code from getlocationasynch ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+
+ TReal64 errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+
+
+ pos = 0;
+
+ _LIT8(KTransactionId, "TransactionID");
+ const TLiwGenericParam *transid = outputlist->FindFirst(pos ,KTransactionId ) ;
+
+
+ if(!transid)
+ {
+ _LIT(KTran,"Missing Transaction ID\n");
+ data.Copy(KTran);
+ LogFile.Write(data) ;
+ //LogFile.Write(KTran);
+ return KErrGeneral;
+ }
+ TInt32 trid = (transid->Value()).AsTInt32();
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ //Make second call
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm1 = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm1)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist\n") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+ return KErrGeneral ;
+ }
+
+ TInt reqerror1 = (ErrorParm1->Value()).AsTInt32();
+ _LIT(Klog1 , "ERRor code from getlocationasynch ") ;
+ data.Copy(Klog1);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+
+ TReal64 errordata1 = reqerror1 ;
+ data.Num(errordata1 , format) ;
+
+
+ LogFile.Write(data) ;
+
+
+ pos = 0;
+
+
+ const TLiwGenericParam *transid1 = outputlist->FindFirst(pos ,KTransactionId ) ;
+
+
+ if(!transid1)
+ {
+ _LIT(KTran,"Missing Transaction ID\n");
+ data.Copy(KTran);
+ LogFile.Write(data) ;
+ //LogFile.Write(KTran);
+ return KErrGeneral;
+ }
+ TInt32 trid1 = (transid1->Value()).AsTInt32();
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+ ///////////////Cancel first call
+
+ inputlist->AppendL(TLiwGenericParam(KTransactionId,TLiwVariant(trid)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptCancel);
+
+ ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist in cancel\n ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog);
+ return KErrGeneral ;
+ }
+
+ reqerror = (ErrorParm->Value()).AsTInt32();
+
+ _LIT(Klog2 , "\nERRor code from cancel ") ;
+
+ data.Copy(Klog2);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog1) ;
+
+ errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+ if( KErrNone != reqerror )
+ {
+ User::Leave(reqerror);
+ }
+ //Cancel the second call
+ inputlist->Reset();
+ inputlist->AppendL(TLiwGenericParam(KTransactionId,TLiwVariant(trid1)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptCancel);
+
+ ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist in cancel\n ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog);
+ return KErrGeneral ;
+ }
+
+ reqerror = (ErrorParm->Value()).AsTInt32();
+
+ _LIT(Klog3 , "\nERRor code from cancel ") ;
+
+ data.Copy(Klog3);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog1) ;
+
+ errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+
+ if( KErrNone != reqerror )
+ {
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete callBack;
+ delete crit;
+ //a.ResetAndDestroy() ;
+ a.Close() ;
+ delete ServiceHandler ;
+
+ __UHEAP_MARKEND ;
+ return reqerror ;
+ }
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete callBack;
+ delete crit;
+ //a.ResetAndDestroy() ;
+ a.Close() ;
+ delete ServiceHandler ;
+
+ __UHEAP_MARKEND ;
+ return reqerror ;
+
+
+
+
+
+ }
+
+
+
+TInt CTestProvider ::TraceMultiple(CStifItemParser& /*aItem*/)
+ {
+
+
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT(LogFileNameCancel , "C:\\cancelinvalid.txt") ;
+
+ if(LogFile.Open(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create log file\n") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CancelWithInvalidTransactionID\n") ;
+ data.Copy(KLog);
+ LogFile.Write(data) ;
+
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KTraceLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ ASyncLocCBF* callBack = new(ELeave) ASyncLocCBF;
+ //Make the first call
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist\n") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+ return KErrGeneral ;
+ }
+
+ TInt reqerror = (ErrorParm->Value()).AsTInt32();
+ _LIT(Klog , "ERRor code from getlocationasynch ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+
+ TReal64 errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+
+
+ pos = 0;
+
+ _LIT8(KTransactionId, "TransactionID");
+ const TLiwGenericParam *transid = outputlist->FindFirst(pos ,KTransactionId ) ;
+
+
+ if(!transid)
+ {
+ _LIT(KTran,"Missing Transaction ID\n");
+ data.Copy(KTran);
+ LogFile.Write(data) ;
+ //LogFile.Write(KTran);
+ return KErrGeneral;
+ }
+ TInt32 trid = (transid->Value()).AsTInt32();
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ //Make second call
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm1 = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm1)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist\n") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+ return KErrGeneral ;
+ }
+
+ TInt reqerror1 = (ErrorParm1->Value()).AsTInt32();
+ _LIT(Klog1 , "ERRor code from getlocationasynch ") ;
+ data.Copy(Klog1);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+
+ TReal64 errordata1 = reqerror1 ;
+ data.Num(errordata1 , format) ;
+
+
+ LogFile.Write(data) ;
+
+
+ pos = 0;
+
+
+ const TLiwGenericParam *transid1 = outputlist->FindFirst(pos ,KTransactionId ) ;
+
+
+ if(!transid1)
+ {
+ _LIT(KTran,"Missing Transaction ID\n");
+ data.Copy(KTran);
+ LogFile.Write(data) ;
+ //LogFile.Write(KTran);
+ return KErrGeneral;
+ }
+ TInt32 trid1 = (transid1->Value()).AsTInt32();
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+ ///////////////Cancel first call
+
+ inputlist->AppendL(TLiwGenericParam(KTransactionId,TLiwVariant(trid)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptCancel);
+
+ ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist in cancel\n ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog);
+ return KErrGeneral ;
+ }
+
+ reqerror = (ErrorParm->Value()).AsTInt32();
+
+ _LIT(Klog2 , "\nERRor code from cancel ") ;
+
+ data.Copy(Klog2);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog1) ;
+
+ errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+ if( KErrNone != reqerror )
+ {
+ User::Leave(reqerror);
+ }
+ //Cancel the second call
+ inputlist->Reset();
+ inputlist->AppendL(TLiwGenericParam(KTransactionId,TLiwVariant(trid1)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptCancel);
+
+ ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist in cancel\n ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog);
+ return KErrGeneral ;
+ }
+
+ reqerror = (ErrorParm->Value()).AsTInt32();
+
+ _LIT(Klog3 , "\nERRor code from cancel ") ;
+
+ data.Copy(Klog3);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog1) ;
+
+ errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+
+ if( KErrNone != reqerror )
+ {
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete callBack;
+ delete crit;
+ //a.ResetAndDestroy() ;
+ a.Close() ;
+ delete ServiceHandler ;
+
+ __UHEAP_MARKEND ;
+ return reqerror ;
+ }
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete callBack;
+ delete crit;
+ //a.ResetAndDestroy() ;
+ a.Close() ;
+ delete ServiceHandler ;
+
+ __UHEAP_MARKEND ;
+ return reqerror ;
+
+
+
+
+
+ }
+
+
+
+
+TInt CTestProvider ::TraceTimeOut(CStifItemParser& /*aItem*/)
+ {
+ //return KErrGeneral;
+ _LIT(KTLocTest ,"TraceTimeOut");
+ iLog->Log(KTLocTest) ;
+
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ TInt ret = FunctionThread.Create(_L(" Timeouttrace Thread") , TraceTO ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);
+
+ if(ret == KErrNone)
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ {
+ _LIT(KLog , "Return Type is valid");
+ iLog->Log(KLog);
+ }
+
+ else
+ {
+ _LIT(KLog , "Return type is not valid\n") ;
+ iLog->Log(KLog) ;
+ }
+ return KErrNone ;
+
+ }
+
+TInt CTestProvider ::TraceMultipleWrongCancel(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT(LogFileNameCancel , "C:\\cancelinvalid.txt") ;
+
+ if(LogFile.Open(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create log file\n") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CancelWithInvalidTransactionID\n") ;
+ data.Copy(KLog);
+ LogFile.Write(data) ;
+
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KTraceLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ ASyncLocCBF* callBack = new(ELeave) ASyncLocCBF;
+ //Make the first call
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist\n") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+ return KErrGeneral ;
+ }
+
+ TInt reqerror = (ErrorParm->Value()).AsTInt32();
+ _LIT(Klog , "ERRor code from getlocationasynch ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+
+ TReal64 errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+
+
+ pos = 0;
+
+ _LIT8(KTransactionId, "TransactionID");
+ const TLiwGenericParam *transid = outputlist->FindFirst(pos ,KTransactionId ) ;
+
+
+ if(!transid)
+ {
+ _LIT(KTran,"Missing Transaction ID\n");
+ data.Copy(KTran);
+ LogFile.Write(data) ;
+ //LogFile.Write(KTran);
+ return KErrGeneral;
+ }
+ TInt32 trid = (transid->Value()).AsTInt32();
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ //Make second call
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm1 = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm1)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist\n") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+ return KErrGeneral ;
+ }
+
+ TInt reqerror1 = (ErrorParm1->Value()).AsTInt32();
+ _LIT(Klog1 , "ERRor code from getlocationasynch ") ;
+ data.Copy(Klog1);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+
+ TReal64 errordata1 = reqerror1 ;
+ data.Num(errordata1 , format) ;
+
+
+ LogFile.Write(data) ;
+
+
+ pos = 0;
+
+
+ const TLiwGenericParam *transid1 = outputlist->FindFirst(pos ,KTransactionId ) ;
+
+
+ if(!transid1)
+ {
+ _LIT(KTran,"Missing Transaction ID\n");
+ data.Copy(KTran);
+ LogFile.Write(data) ;
+ //LogFile.Write(KTran);
+ return KErrGeneral;
+ }
+ TInt32 trid1 = (transid1->Value()).AsTInt32();
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+ ///////////////Cancel first call by using CancelNotification
+ _LIT8(KCancel , "CancelNotification") ;
+ _LIT8( KType ,"CancelRequestType") ;
+ _LIT( KTraceCancel ,"TraceCancel") ;
+ inputlist->AppendL(TLiwGenericParam (KType , TLiwVariant (KTraceCancel))) ;
+
+ locinterface->ExecuteCmdL(KCancel , *inputlist , *outputlist) ;
+
+ pos = 0 ;
+ const TLiwGenericParam *errprm = outputlist->FindFirst(pos , KErrCode) ;
+
+ if(!errprm)
+ {
+ _LIT(Kerr, "Success/Failure code missing from outputlist") ;
+ iLog->Log(Kerr) ;
+ }
+
+
+
+ TLiwVariant var = errprm->Value() ;
+
+
+
+
+ //Cancel the second call the usual way
+ inputlist->Reset();
+ inputlist->AppendL(TLiwGenericParam(KTransactionId,TLiwVariant(trid1)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptCancel);
+
+ ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist in cancel\n ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog);
+ return KErrGeneral ;
+ }
+
+ reqerror = (ErrorParm->Value()).AsTInt32();
+
+ _LIT(Klog3 , "\nERRor code from cancel ") ;
+
+ data.Copy(Klog3);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog1) ;
+
+ errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+
+ if( KErrNone != reqerror || var.AsTInt32() != KErrNone)
+ {
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete callBack;
+ delete crit;
+ //a.ResetAndDestroy() ;
+ a.Close() ;
+ delete ServiceHandler ;
+
+ __UHEAP_MARKEND ;
+ return KErrGeneral ;
+ }
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete callBack;
+ delete crit;
+ //a.ResetAndDestroy() ;
+ a.Close() ;
+ delete ServiceHandler ;
+
+ __UHEAP_MARKEND ;
+ return reqerror ;
+
+
+
+ }
+
+
+TInt CTestProvider ::EnableAccTrueGetLoc(CStifItemParser& /*aItem*/)
+ {
+ //return KErrGeneral;
+ _LIT(KTLocTest ,"EnableAccTrueGetLoc");
+ iLog->Log(KTLocTest) ;
+ TInt flag = 1;
+ TInt *flagAddr = &flag;
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ TInt ret = FunctionThread.Create(_L(" EnableAccTrueGetLoc Thread") , EnableHighAcc ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) flagAddr);
+
+ if(ret == KErrNone)
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+
+ return ret ;
+
+ }
+
+TInt CTestProvider ::EnableAccFalseGetLoc(CStifItemParser& /*aItem*/)
+ {
+ //return KErrGeneral;
+ _LIT(KTLocTest ,"EnableAccTrueGetLoc");
+ iLog->Log(KTLocTest) ;
+ TInt flag = 2;
+ TInt *flagAddr = &flag;
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ TInt ret = FunctionThread.Create(_L(" EnableAccTrueGetLoc Thread") , EnableHighAcc ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) flagAddr);
+
+ if(ret == KErrNone)
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ {
+ _LIT(KLog , "Return Type is valid");
+ iLog->Log(KLog);
+ }
+
+ else
+ {
+ _LIT(KLog , "Return type is not valid\n") ;
+ iLog->Log(KLog) ;
+ }
+ return KErrNone ;
+
+ }
+
+
+
+TInt CTestProvider ::EnableAccTrueTrace(CStifItemParser& /*aItem*/)
+ {
+ //return KErrGeneral;
+ _LIT(KTLocTest ,"EnableAccTrueGetLoc");
+ iLog->Log(KTLocTest) ;
+ TInt flag = 3;
+ TInt *flagAddr = &flag;
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ TInt ret = FunctionThread.Create(_L(" EnableAccTrueGetLoc Thread") , EnableHighAcc ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) flagAddr);
+
+ if(ret == KErrNone)
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ {
+ _LIT(KLog , "Return Type is valid");
+ iLog->Log(KLog);
+ }
+
+ else
+ {
+ _LIT(KLog , "Return type is not valid\n") ;
+ iLog->Log(KLog) ;
+ }
+ return KErrNone ;
+
+ }
+
+TInt CTestProvider ::EnableAccFalseTrace(CStifItemParser& /*aItem*/)
+ {
+ //return KErrGeneral;
+ _LIT(KTLocTest ,"EnableAccTrueGetLoc");
+ iLog->Log(KTLocTest) ;
+ TInt flag = 4;
+ TInt *flagAddr = &flag;
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ TInt ret = FunctionThread.Create(_L(" EnableAccTrueGetLoc Thread") , EnableHighAcc ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) flagAddr);
+
+ if(ret == KErrNone)
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ {
+ _LIT(KLog , "Return Type is valid");
+ iLog->Log(KLog);
+ }
+
+ else
+ {
+ _LIT(KLog , "Return type is not valid\n") ;
+ iLog->Log(KLog) ;
+ }
+ return KErrNone ;
+
+ }
+
+
+TInt CTestProvider ::EnableAccPosBasedGetloc(CStifItemParser& /*aItem*/)
+ {
+ //return KErrGeneral;
+ _LIT(KTLocTest ,"EnableAccTrueGetLoc");
+ iLog->Log(KTLocTest) ;
+ TInt flag = 1;
+ TInt *flagAddr = &flag;
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ TInt ret = FunctionThread.Create(_L(" EnableAccTrueGetLoc Thread") , EnableHighAcc_PosBased ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) flagAddr);
+
+ if(ret == KErrNone)
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ {
+ _LIT(KLog , "Return Type is valid");
+ iLog->Log(KLog);
+ }
+
+ else
+ {
+ _LIT(KLog , "Return type is not valid\n") ;
+ iLog->Log(KLog) ;
+ }
+ return KErrNone ;
+
+ }
+
+
+TInt CTestProvider ::EnableAccPosBasedWrongTypeGetloc(CStifItemParser& /*aItem*/)
+ {
+ //return KErrGeneral;
+ _LIT(KTLocTest ,"EnableAccTrueGetLoc");
+ iLog->Log(KTLocTest) ;
+ TInt flag = 2;
+ TInt *flagAddr = &flag;
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ TInt ret = FunctionThread.Create(_L(" EnableAccTrueGetLoc Thread") , EnableHighAcc_PosBased ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) flagAddr);
+
+ if(ret == KErrNone)
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ {
+ _LIT(KLog , "Return Type is valid");
+ iLog->Log(KLog);
+ }
+
+ else
+ {
+ _LIT(KLog , "Return type is not valid\n") ;
+ iLog->Log(KLog) ;
+ }
+ return KErrNone ;
+
+ }
+
+
+TInt CTestProvider ::EnableAccPosBasedTrace(CStifItemParser& /*aItem*/)
+ {
+ //return KErrGeneral;
+ _LIT(KTLocTest ,"EnableAccTrueGetLoc");
+ iLog->Log(KTLocTest) ;
+ TInt flag = 3;
+ TInt *flagAddr = &flag;
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ TInt ret = FunctionThread.Create(_L(" EnableAccTrueGetLoc Thread") , EnableHighAcc_PosBased ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) flagAddr);
+
+ if(ret == KErrNone)
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ {
+ _LIT(KLog , "Return Type is valid");
+ iLog->Log(KLog);
+ }
+
+ else
+ {
+ _LIT(KLog , "Return type is not valid\n") ;
+ iLog->Log(KLog) ;
+ }
+ return KErrNone ;
+
+ }
+
+
+
+TInt CTestProvider ::EnableAccPosBasedWrongTypeTrace(CStifItemParser& /*aItem*/)
+ {
+ //return KErrGeneral;
+ _LIT(KTLocTest ,"EnableAccTrueGetLoc");
+ iLog->Log(KTLocTest) ;
+ TInt flag = 4;
+ TInt *flagAddr = &flag;
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ TInt ret = FunctionThread.Create(_L(" EnableAccTrueGetLoc Thread") , EnableHighAcc_PosBased ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) flagAddr);
+
+ if(ret == KErrNone)
+ {
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+
+
+ ret = Status.Int() ;
+ }
+ FunctionThread.Close();
+
+ if(ret == SErrServiceInUse)
+ {
+ _LIT(KLog , "Return Type is valid");
+ iLog->Log(KLog);
+ }
+
+ else
+ {
+ _LIT(KLog , "Return type is not valid\n") ;
+ iLog->Log(KLog) ;
+ }
+ return KErrNone ;
+
}
-
-
-
-
-
-
+TInt CTestProvider::GetLocationPosBasedWrongVal(CStifItemParser& /*aItem*/)
+ {
+
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create notifications log file") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CTGetLocation") ;
+ iLog->Log(KLog) ;
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+ _LIT(KLog , "Interface not found");
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ //_LIT(KClass,"GenericLocationInfo");//Invalid KClass value
+ TInt KClass = 12;
+ inputlist->AppendL( TLiwGenericParam( KNullDesC8,TLiwVariant( KClass ) ) );
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog, "Success/Failure state not known") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+ if((ErrorParm->Value()).AsTInt32() != SErrBadArgumentType )
+ {
+ _LIT(KLog , "ExecutecmdL failed ");
+ iLog->Log(KLog) ;
+ return (ErrorParm->Value()).AsTInt32() ;
+ }
+
+
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+
+
+ }
+
+
+TInt CTestProvider :: CancelTransIdPosBased(CStifItemParser& /*aItem*/)
+ {
+
+ __UHEAP_MARK ;
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ ASyncLocCBF* callBack = new(ELeave) ASyncLocCBF;
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ return KErrGeneral ;
+ }
+
+ TInt reqerror = (ErrorParm->Value()).AsTInt32();
+
+ pos = 0;
+
+ _LIT8(KTransactionId, "TransactionID");
+ const TLiwGenericParam *transid = outputlist->FindFirst(pos ,KTransactionId ) ;
+ if(!transid)
+ {
+ return KErrGeneral;
+ }
+ TInt32 trid = (transid->Value()).AsTInt32();
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+
+ //inputlist->AppendL(TLiwGenericParam(KTransactionId,TLiwVariant(trid)));
+ inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(trid)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptCancel);
+
+ ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ return KErrGeneral ;
+ }
+
+ reqerror = (ErrorParm->Value()).AsTInt32();
+ TInt retr = KErrGeneral;
+ if( 0 == reqerror )
+ {
+ retr = 0;
+ }
+
+ locinterface->Close() ;
+ inputlist->Reset();
+ outputlist->Reset();
+ delete callBack;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return reqerror ;
+
+
+ }
+
+TInt CTestProvider ::CancelWithoutTransId(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT(LogFileNameCancel , "C:\\cancelinvalid.txt") ;
+
+ if(LogFile.Open(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileNameCancel , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create log file\n") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CancelWithInvalidTransactionID\n") ;
+ data.Copy(KLog);
+ LogFile.Write(data) ;
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ ASyncLocCBF* callBack ;
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous, callBack);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist\n") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+ return KErrGeneral ;
+ }
+
+ TInt reqerror = (ErrorParm->Value()).AsTInt32();
+ _LIT(Klog , "ERRor code from getlocationasynch ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+
+ //LogFile.Write(Klog) ;
+
+ TReal64 errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+
+
+ pos = 0;
+
+ _LIT8(KTransactionId, "TransactionID");
+ const TLiwGenericParam *transid = outputlist->FindFirst(pos ,KTransactionId ) ;
+ if(!transid)
+ {
+ _LIT(KTran,"Missing Transaction ID\n");
+ data.Copy(KTran);
+ LogFile.Write(data) ;
+ //LogFile.Write(KTran);
+ return KErrGeneral;
+ }
+ TInt trid = (transid->Value()).AsTInt32();
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+
+ //No trans Id is passed
+ //inputlist->AppendL(TLiwGenericParam(KTransactionId,TLiwVariant(trid-2)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptCancel);
+
+ ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist in cancel\n ") ;
+ data.Copy(Klog);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog);
+ return KErrGeneral ;
+ }
+
+ reqerror = (ErrorParm->Value()).AsTInt32();
+
+ _LIT(Klog1 , "\nERRor code from cancel ") ;
+
+ data.Copy(Klog1);
+ LogFile.Write(data) ;
+ //LogFile.Write(Klog1) ;
+
+ errordata = reqerror ;
+ data.Num(errordata , format) ;
+
+
+ LogFile.Write(data) ;
+
+
+ TInt retr = KErrGeneral;
+ if( 1002 == reqerror )
+ {
+ retr = 0;
+ }
+
+
+
+
+
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return retr ;
+
+ }
+
+TInt CTestProvider :: GetLocationAsyncPosBasedUpdate(CStifItemParser& /*aItem*/)
+ {
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ FunctionThread.Create(_L("GetLocationAsynchThread2") , GetLocAsynchPosBased ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);
+
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ return Status.Int() ;
+
+ }
+
+TInt CTestProvider :: GetLocationAsyncWrongUpdate(CStifItemParser& /*aItem*/)
+ {
+ TRequestStatus Status = KRequestPending ;
+ RThread FunctionThread ;
+
+ FunctionThread.Create(_L("GetLocationAsynchThread2") , GetLocAsynchWrongVal ,KDefaultStackSize ,
+ KMinHeapSize , 0x5000 ,(TAny *) NULL);
+ // FunctionThread.Create(_L("GetLocationAsynchThread1") , GetLocAsynchWrongVal ,KDefaultStackSize ,
+ // NULL , NULL,(TAny *) NULL);
+
+ FunctionThread.Logon(Status) ;
+ FunctionThread.Resume() ;
+
+ User :: WaitForRequest (Status) ;
+ FunctionThread.Close();
+
+ return Status.Int() ;
+
+ }
+
+TInt CTestProvider::GetLocPosBasedWrongVal(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> data ;
+ TRealFormat format ;
+
+
+ if(LogSession.Connect() != KErrNone)
+ {
+ _LIT(KLog , "Failed to connect to file server") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+
+
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ if(LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) != KErrNone)
+ {
+ _LIT(KLog , "Failed to create notifications log file") ;
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ }
+
+ _LIT(KLog , "In CTGetLocation") ;
+ iLog->Log(KLog) ;
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+
+
+
+
+
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ _LIT(Klog , "Success/Failure error code missing from outputlist") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+ _LIT(KLog , "Interface not found");
+ iLog->Log(KLog) ;
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KCmdGetLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ _LIT(KClass,"GenericLocationInfo");
+ inputlist->AppendL( TLiwGenericParam( KNullDesC8,TLiwVariant( KClass ) ) );
+
+ TInt updatemap =12 ;
+
+ inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(updatemap)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+ _LIT(Klog, "Success/Failure state not known") ;
+ iLog->Log(Klog) ;
+ return KErrGeneral ;
+ }
+
+ if((ErrorParm->Value()).AsTInt32() != 1002)
+ {
+ _LIT(KLog , "ExecutecmdL failed ");
+ iLog->Log(KLog) ;
+ return KErrGeneral;
+ }
+
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+ }
+
+
+TInt CTestProvider::GetLocPosBasedWrongVal1(CStifItemParser& /*aItem*/)
+ {
+ //currently not needed
+
+ }
+
+
+TInt CTestProvider :: TracePosBasedWrongVal( CStifItemParser& /*aItem*/ )
+ {
+ __UHEAP_MARK ;
+ TInt start = User::CountAllocCells();
+ ASyncLocCBF callback;
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KCmdTraceLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ _LIT8(KClass,"LocationInformationClass");
+ //_LIT(KClassArg,"Invalid");
+ TInt KClassArg = 12;
+ inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(KClassArg)));
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous,&callback);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+
+ return KErrGeneral ;
+ }
+ TInt error = (ErrorParm->Value()).AsTInt32();
+ TInt retr = KErrGeneral;
+ if( SErrBadArgumentType == error )
+ {
+ retr = KErrNone;
+
+
+ }
+ locinterface->Close() ;
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ TInt end = User::CountAllocCells();
+ __UHEAP_MARKEND ;
+ return retr;
+
+ }
+
+TInt CTestProvider::TracePosBasedUpdateOpts(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+ TInt start = User::CountAllocCells();
+ ASyncLocCBF callback;
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KCmdTraceLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ _LIT8(KClass,"LocationInformationClass");
+ _LIT(KClassArg,"Invalid");
+
+ inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(KClassArg)));
+
+ CLiwDefaultMap* updatemap = CLiwDefaultMap::NewL();
+
+ _LIT8(KInterval,"UpdateInterval");
+ _LIT8(KTimeout,"UpdateTimeOut");
+ _LIT8(KAge,"UpdateMaxAge");
+ _LIT8(KPartial,"PartialUpdates");
+ const TInt KTime = -1000000; // bad time
+
+ updatemap->InsertL(KInterval , TLiwVariant(TInt32(2*KTime)));
+ updatemap->InsertL(KTimeout , TLiwVariant(TInt32(30*KTime)));
+ updatemap->InsertL(KAge , TLiwVariant(TInt32(0)));
+ updatemap->InsertL(KPartial , TLiwVariant(TBool(FALSE)));
+
+ inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(updatemap)));
+ updatemap->DecRef();
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous,&callback);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+
+ return KErrGeneral ;
+ }
+ TInt error = (ErrorParm->Value()).AsTInt32();
+ TInt retr = KErrGeneral;
+ if( SErrBadArgumentType == error )
+ {
+ retr = KErrNone;
+
+
+ }
+ locinterface->Close() ;
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ TInt end = User::CountAllocCells();
+ __UHEAP_MARKEND ;
+ return retr;
+
+ }
+
+TInt CTestProvider::TracePosBasedUpdateWrongVal(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+ TInt start = User::CountAllocCells();
+ ASyncLocCBF callback;
+
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KDataSource , KService);
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+
+ return KErrGeneral ;
+ }
+
+
+ _LIT8(KDataSource, "ILocation");
+
+ pos = 0 ;
+
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KLocationInterface);
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+
+
+ TBuf8<20>CmdBuf(KCmdTraceLocation) ;
+
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ _LIT8(KClass,"LocationInformationClass");
+ _LIT(KClassArg,"Invalid");
+
+ inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(KClassArg)));
+
+ TInt updatemap = 12;
+
+ inputlist->AppendL(TLiwGenericParam(KNullDesC8,TLiwVariant(updatemap)));
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *inputlist , *outputlist,KLiwOptASyncronous,&callback);
+
+ pos = 0 ;
+
+ const TLiwGenericParam *ErrorParm = outputlist->FindFirst(pos ,KErrorCode ) ;
+
+ if(!ErrorParm)
+ {
+
+ return KErrGeneral ;
+ }
+ TInt error = (ErrorParm->Value()).AsTInt32();
+ TInt retr = KErrGeneral;
+ if( SErrBadArgumentType == error )
+ {
+ retr = KErrNone;
+
+
+ }
+ locinterface->Close() ;
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ TInt end = User::CountAllocCells();
+ __UHEAP_MARKEND ;
+ return retr;
+
+ }
+
+
+TInt CTestProvider ::FindDistancePositionBased(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ return KErrGeneral ;
+ }
+
+ pos = 0 ;
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+ //First set the identity information
+
+ TBuf8<20>CmdBufSet(KRequestCalculate) ;
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ TLiwGenericParam requesttype(KNullDesC8 , TLiwVariant(KRequestDistance)) ;
+ InputList->AppendL(requesttype) ;
+
+
+
+ //Inserting first input param
+ CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
+ TReal64 slongitude = 71.03;
+ SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
+ TReal64 slatitude = 42.37;
+ SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
+ TReal64 saltitude = 1;
+ SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(slatitude));
+
+ TLiwGenericParam scoordinate(KNullDesC8,TLiwVariant(SourceCoordinate));
+ InputList->AppendL(scoordinate) ;
+ SourceCoordinate->DecRef() ;
+
+
+
+ //Inserting 2nd input param
+ CLiwMap* DestCoordinate = CLiwDefaultMap::NewL();
+ TReal64 dlongitude = 83.02;
+ DestCoordinate->InsertL(KLongitudeKey,TLiwVariant(dlongitude));
+ TReal64 dlatitude = 42.42;
+ DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
+ TReal64 daltitude = 1;
+ DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(dlatitude));
+
+ TLiwGenericParam dcoordinate(KNullDesC8,TLiwVariant(DestCoordinate));
+ InputList->AppendL(dcoordinate) ;
+ DestCoordinate->DecRef() ;
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+ CmdBufSet = KRequestCalculate ;
+
+ locinterface->ExecuteCmdL(CmdBufSet , *InputList , *OutParmList);
+
+
+ pos = 0;
+ const TLiwGenericParam* param = OutParmList->FindFirst(pos, KErrorCode);
+
+
+ pos = 0;
+ const TLiwGenericParam* resultparam = OutParmList->FindFirst(pos, KMathOpResult);
+ TLiwVariant resultvariant = resultparam->Value();
+ TReal64 distance = resultvariant.AsTReal();
+
+
+
+
+ //Logging result into a file
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> Buffer(_L8("Distance = ")) ;
+ LogSession.Connect() ;
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
+
+ }
+
+ TInt End = 0 ;
+
+ LogFile.Seek(ESeekEnd , End) ; //Seek to end of the file before writing
+
+ TBuf8<50> num ;
+ TRealFormat format ;
+ //TReal64 Val = aPosition.Latitude() ;
+ num.Num(distance , format) ;
+
+ //Logging Latitude
+ LogFile.Write(_L8("distance = "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ delete InputList ;
+ delete OutParmList ;
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+ }
+
+
+TInt CTestProvider::MoveCoordinatePosBased(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ return KErrGeneral ;
+ }
+
+ pos = 0 ;
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+
+ TBuf8<20>CmdBuf(KRequestCalculate) ;
+ outputlist->Reset() ;
+ inputlist->Reset() ;
+
+
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ TLiwGenericParam requesttype(KNullDesC8 , TLiwVariant(KRequestMove)) ;
+ InputList->AppendL(requesttype) ;
+
+
+ //Inserting first input param
+ CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
+ TReal64 slongitude = 22;
+ SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
+ TReal64 slatitude = 88;
+ SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
+
+ TReal64 saltitude = 1;
+ SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(saltitude));
+
+
+
+ TLiwGenericParam scoordinate(KNullDesC8,TLiwVariant(SourceCoordinate));
+ InputList->AppendL(scoordinate) ;
+ SourceCoordinate->DecRef() ;
+
+
+
+ TReal32 distanceToMove = 345;
+ TReal32 bearingToMove = 45;
+
+
+ //Inserting distance by which coordinate should be moved
+ TLiwVariant distanceVal((TReal)distanceToMove);
+ TLiwGenericParam distanceParam(KNullDesC8,distanceVal);
+ InputList->AppendL(distanceParam);
+
+ //Inserting bearing by which coordinate should be moved
+ TLiwVariant bearingVal((TReal)bearingToMove);
+ TLiwGenericParam bearingParam(KNullDesC8,bearingVal);
+ InputList->AppendL(bearingParam);
+
+
+
+
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+
+
+ locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
+
+
+
+
+
+ TInt mathindex = 0;
+
+ // calculation
+ const TLiwGenericParam *smapparam = OutParmList->FindFirst(mathindex , KLocationMap) ;
+ TLiwVariant mapVariant= smapparam->Value() ;
+ const CLiwMap *map = mapVariant.AsMap() ;
+ TCoordinate source ;
+
+ FillCoordinatesL(source , map) ;
+
+ TReal64 longitudeInputVal = source.Longitude();
+ TReal64 latitudeInputVal = source.Latitude();
+ TReal64 altitudeInputVal = source.Altitude();
+
+
+ //Logging result into a file
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> Buffer(_L8("Longitude = ")) ;
+ LogSession.Connect() ;
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
+
+ }
+
+ TInt End = 0 ;
+
+ LogFile.Seek(ESeekEnd , End) ; //Seek to end of the file before writing
+
+ TBuf8<50> num ;
+ TRealFormat format ;
+
+ num.Num(longitudeInputVal, format) ;
+
+ //Logging
+ LogFile.Write(_L8("Longitude = "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ //LogFile.Seek(ESeekEnd , End) ;
+ num.Num(latitudeInputVal, format) ;
+ LogFile.Write(_L8("Latitude = "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ num.Num(altitudeInputVal, format) ;
+ LogFile.Write(_L8("altitude = "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ delete OutParmList ;
+ delete InputList ;
+ locinterface->Close() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+ }
+
+TInt CTestProvider::FindBearingPosBased(CStifItemParser& /*aItem*/)
+ {
+ __UHEAP_MARK ;
+
+ CLiwServiceHandler* ServiceHandler = CLiwServiceHandler::NewL();
+
+ // Input and output parameter list
+ CLiwGenericParamList* inputlist = &(ServiceHandler->InParamListL());
+ CLiwGenericParamList* outputlist = &(ServiceHandler->OutParamListL());
+
+
+
+
+ CLiwCriteriaItem* crit = CLiwCriteriaItem::NewL(1, KContents, KService);
+
+
+ crit->SetServiceClass(TUid::Uid(KLiwClassBase));
+
+ RCriteriaArray a;
+ a.AppendL(crit);
+
+ ServiceHandler->AttachL(a) ;
+ ServiceHandler->ExecuteServiceCmdL(*crit, *inputlist, *outputlist);
+
+
+
+
+ TInt pos = 0;
+
+ const TLiwGenericParam *errorprm = outputlist->FindFirst(pos , KErrorCode) ;
+
+ if(!errorprm)
+ {
+ return KErrGeneral ;
+ }
+
+ pos = 0 ;
+ const TLiwGenericParam *genericparm = outputlist->FindFirst(pos,KDataSource );
+
+ if(!genericparm)
+ {
+
+ return KErrGeneral ;
+ }
+
+ MLiwInterface* locinterface = (genericparm->Value()).AsInterface();
+ TBuf8<20>CmdBuf(KRequestCalculate) ;
+
+ CLiwGenericParamList *InputList = CLiwGenericParamList :: NewL() ;
+
+ TLiwGenericParam requesttype(KNullDesC8 , TLiwVariant(KRequestBearingTo)) ;
+ InputList->AppendL(requesttype) ;
+
+ //Inserting first input param
+ CLiwMap* SourceCoordinate = CLiwDefaultMap::NewL();
+ TReal64 slongitude = 22;
+ SourceCoordinate->InsertL(KLongitudeKey,TLiwVariant(slongitude));
+ TReal64 slatitude = 88;
+ SourceCoordinate->InsertL(KLatitudeKey,TLiwVariant(slatitude));
+ TReal64 saltitude = 1;
+ SourceCoordinate->InsertL(KAltitudeKey,TLiwVariant(slatitude));
+
+ TLiwGenericParam scoordinate(KNullDesC8,TLiwVariant(SourceCoordinate));
+ InputList->AppendL(scoordinate) ;
+ SourceCoordinate->DecRef() ;
+
+
+
+ //Inserting 2nd input param
+ CLiwMap* DestCoordinate = CLiwDefaultMap::NewL();
+ TReal64 dlongitude = 13;
+ DestCoordinate->InsertL(KLongitudeKey,TLiwVariant(dlongitude));
+ TReal64 dlatitude = 77;
+ DestCoordinate->InsertL(KLatitudeKey,TLiwVariant(dlatitude));
+ TReal64 daltitude = 1;
+ DestCoordinate->InsertL(KAltitudeKey,TLiwVariant(dlatitude));
+
+ TLiwGenericParam dcoordinate(KNullDesC8,TLiwVariant(DestCoordinate));
+ InputList->AppendL(dcoordinate) ;
+ DestCoordinate->DecRef() ;
+
+
+ CLiwGenericParamList *OutParmList = CLiwGenericParamList :: NewL() ;
+
+
+ CmdBuf = KRequestCalculate ;
+
+ locinterface->ExecuteCmdL(CmdBuf , *InputList , *OutParmList);
+
+
+ pos = 0;
+ const TLiwGenericParam* param = OutParmList->FindFirst(pos, KErrorCode);
+
+ pos = 0;
+ const TLiwGenericParam* resultparam = OutParmList->FindFirst(pos, KMathOpResult);
+ TLiwVariant resultvariant = resultparam->Value();
+ TReal32 bearingTo = resultvariant.AsTReal();
+
+
+
+
+ //Logging result into a file
+ RFile LogFile ;
+ RFs LogSession ;
+ TBuf8<50> Buffer(_L8("BearingTo = ")) ;
+ LogSession.Connect() ;
+
+ if(LogFile.Open(LogSession ,LogFileName , EFileWrite | EFileShareAny ) == KErrNotFound)
+ {
+ LogFile.Create(LogSession ,LogFileName , EFileWrite | EFileShareAny ) ;
+ }
+
+ TInt End = 0 ;
+
+ LogFile.Seek(ESeekEnd , End) ; //Seek to end of the file before writing
+
+ TBuf8<50> num ;
+ TRealFormat format ;
+
+ num.Num(bearingTo , format) ;
+
+
+ LogFile.Write(_L8("BearingTo= "));
+ LogFile.Write(num) ;
+ LogFile.Write(_L8("\n")) ;
+ LogFile.Close() ;
+ LogSession.Close() ;
+
+ delete OutParmList ;
+ dcoordinate.Reset() ;
+ scoordinate.Reset() ;
+ delete InputList ;
+ locinterface->Close() ;
+ inputlist->Reset() ;
+ outputlist->Reset() ;
+ delete ServiceHandler ;
+ a.ResetAndDestroy() ;
+ a.Close() ;
+ __UHEAP_MARKEND ;
+ return KErrNone ;
+
+
+ }