networkcontrol/ipupsplugins/test/te_ipups/src/te_ipups_ups_step.cpp
branchRCL_3
changeset 5 1422c6cd3f0c
parent 1 a579325b79dd
child 6 e7dfaa7b0b8d
child 10 c64cefac6e99
--- a/networkcontrol/ipupsplugins/test/te_ipups/src/te_ipups_ups_step.cpp	Tue Feb 02 01:27:53 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,613 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-/**
- @file
- @test
- @internalComponent - Internal Symbian test code 
-*/
-
-#include "te_ipups_ups_step.h"  
-#include "upstestnotifierproperties.h"
-#include <s32mem.h> 
-
-static TInt ThreadFunction(TAny *)
-	{
-	return KErrNone;
-	}
-	
-CIpUpsStep::~CIpUpsStep()
-/**
- * Destructor
- */
-	{  	
-	} // End of function
-
-
-CIpUpsStep::CIpUpsStep()
-/**
- * Constructor
- */
-	{
-	SetTestStepName(KIpUpsClientStep);
-	} // End of function
-
-
-TVerdict CIpUpsStep::doTestStepPreambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	TSecurityPolicy nullPolicy(ECapability_None);
-    TInt err;
-    
-    //Properties modified to be returned to test harness from test notifier
-    err = RProperty::Define(KUidPSUPSTestNotifCategory, KUnNotifyCount, KUnCountKeyType, nullPolicy, nullPolicy);
-    if (err != KErrAlreadyExists && err != KErrNone)
-    	{
-    	User::LeaveIfError(err);
-    	}
-    
-    err = RProperty::Define(KUidPSUPSTestNotifCategory, KUnNotifyValues, KUnNotifyValuesKeyType, nullPolicy, nullPolicy);
-    if (err != KErrAlreadyExists && err != KErrNone)
-    	{
-    	User::LeaveIfError(err);
-    	}
-    
-    //Properties test notifier requires from test harness about the button press and delay
-    err = RProperty::Define(KUidPSUPSTestNotifCategory, KUtButtonPress, KUtButtonPressKeyType, nullPolicy, nullPolicy);
-    if (err != KErrAlreadyExists && err != KErrNone)
-    	{
-    	User::LeaveIfError(err);
-    	}
-    
-    err = RProperty::Define(KUidPSUPSTestNotifCategory, KUtButtonPressDelay, KUtButtonPressDelayKeyType, nullPolicy, nullPolicy);
-    if (err != KErrAlreadyExists && err != KErrNone)
-    	{
-    	User::LeaveIfError(err);
-    	}
-    
-    //Get the testNotifier working mode, filemode or P&S mode
-    User::LeaveIfError(RProperty::Get(KUidPSUPSTestNotifCategory, KUtFileOverride, iTestNotifierMode));
-    
-    //Set the property to override working of testNotifier in P&S mode instead of filemode
-    User::LeaveIfError(RProperty::Set(KUidPSUPSTestNotifCategory, KUtFileOverride, KFileOverride));
-    
-    //Initialise optional data iNoOfAuthoriseCalls (should be '1' minimum).
-    iNoOfAuthoriseCalls = 1;
-    
-    //Initialise optional data iPromptTriggerCount (Initialising with '-1' means no check if user not specfied in INI file).
-    iPromptTriggerCount = -1;
-    
-    //Read data from INI file
-	GetHexFromConfig(ConfigSection(), KIpUpsServiceId, iServiceUID);
-	GetStringFromConfig(ConfigSection(),KIpUpsDestination, iDestination);
-	GetStringFromConfig(ConfigSection(),KIpUpsOpaqueData, iOpaqueData);
-	GetStringFromConfig(ConfigSection(),KIpUpsDialogOptionSelection, iDialogOption);
-	GetBoolFromConfig(ConfigSection(),KIpUpsPlatSecPass, iPlatSecPass);	
-	GetStringFromConfig(ConfigSection(),KIpUpsExpectedDecision, iExpectedUpsDecision);	
-	GetIntFromConfig(ConfigSection(),KIpUpsPromptTriggerCount, iPromptTriggerCount);
-    GetIntFromConfig(ConfigSection(),KIpUpsNoOfAuthoriseCalls, iNoOfAuthoriseCalls);    
-    GetBoolFromConfig(ConfigSection(),KIpUpsCancelPromptCall, iCancelPromptCall);
-    
-    GetBoolFromConfig(ConfigSection(),KIpUpsAlwaysOpenNewSession, iAlwaysOpenNewSession);
-        
-    GetBoolFromConfig(ConfigSection(),KIpUpsUseSameSubSession, iUseSameSubSession);
-    GetBoolFromConfig(ConfigSection(),KIpUpsUseSameSubSessionAfterClose, iUseSameSubSessionAfterClose);
-    GetBoolFromConfig(ConfigSection(),KIpUpsAlwaysOpenNewSubSession, iAlwaysOpenNewSubSession);
-    
-    //Keep the initial count of the notifier recorded, should be '0'
-    User::LeaveIfError(RProperty::Get(KUidPSUPSTestNotifCategory, KUnNotifyCount, iNotifyCount));
-    
-	SetTestStepResult(EPass);	
-	return TestStepResult();
-	} // End of function.
-
-
-TVerdict CIpUpsStep::doTestStepL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{	
-	UserPromptService::RUpsSession 		upsSession;
-    UserPromptService::RUpsSubsession 	upsSubSession[KMaxNoOfAuthoriseCalls];
-        
-    RThread dummyThread[KMaxNoOfAuthoriseCalls];
-    TRequestStatus threadStatus; 	
- 	
- 	TInt notifyCountBeforeTest = iNotifyCount;
- 	TInt notifyCountAfterTest = 0;
-	
-	TServiceId serviceId = TUid::Uid(iServiceUID);
-	
-	TInt subSessionCntr = 0;
-	
-	//Repeat call to Authorise as specified in INI file (through NoOfAuthoriseCalls data)
-    for (TInt cntr=0; cntr<iNoOfAuthoriseCalls && cntr<KMaxNoOfAuthoriseCalls; cntr++)
-    	{
-    	if (upsSession.Handle() == KNullHandle)
-    		{
-    		User::LeaveIfError(upsSession.Connect());
-    		INFO_PRINTF1(_L("UPS Session Started."));
-    		}
-    	
-    	if (upsSubSession[subSessionCntr].SubSessionHandle() == KNullHandle)
-    		{
-    		//Create dummy thread with different names
-    		TBuf<32> dummyThreadName;
-    		dummyThreadName.Copy(_L("DummyThread_0123456789"));
-    		
-    		User::LeaveIfError(dummyThread[subSessionCntr].Create(dummyThreadName.Right(dummyThreadName.Length()-subSessionCntr), ThreadFunction, 4096, 4096, 4096, 0, EOwnerThread));
-    		
-			dummyThread[subSessionCntr].Rendezvous(threadStatus);
-			dummyThread[subSessionCntr].Resume();
- 			User::WaitForRequest(threadStatus);
- 			
-    		upsSubSession[subSessionCntr] = UserPromptService::RUpsSubsession();
-    		User::LeaveIfError(upsSubSession[subSessionCntr].Initialise(upsSession, dummyThread[subSessionCntr]));
-    		INFO_PRINTF1(_L("UPS SubSession Initialised."));
-    		}
-		
-		//Get the dialog option for this iteration (specified in the INI file through 
-	    //DialogOptionSelection data, separated using KIniFileDelimeter).
-		TBuf<32> dialogOption;
-		GetValueAt(cntr, iDialogOption, KIniFileDelimeter, dialogOption);
-		
-	    UserPromptService::TPromptResult promptResult;
-	    promptResult.iSelected = ButtonToOption(dialogOption);
-	    
-		TPckg<UserPromptService::TPromptResult> resultPckg(promptResult);
-		
-		//Set the Dialog Option selection by user (specifies through DialogOptionSelection data value in INI file).
-	    User::LeaveIfError(RProperty::Set(KUidPSUPSTestNotifCategory, KUtButtonPress, resultPckg));
-		User::LeaveIfError(RProperty::Set(KUidPSUPSTestNotifCategory, KUtButtonPressDelay, iCancelPromptCall?1:0));
-		
-		INFO_PRINTF2(_L("Dialog Option Selection ( %S )."), &dialogOption);
-		
-		//Get the Notify Count BEFORE call to Authorise
-		User::LeaveIfError(RProperty::Get(KUidPSUPSTestNotifCategory, KUnNotifyCount, notifyCountBeforeTest));
-		
-	    TUpsDecision upsDecision;
-	    TRequestStatus status;
-	    
-	    if ( iOpaqueData.Length() > 0 )
-	    	{	    	
-	    	HBufC8* converter = HBufC8::NewLC(iOpaqueData.Length());
-	    	converter->Des().Copy(iOpaqueData);	             
-	       	iOpaqueDataStored = converter->Ptr();
-	       	CleanupStack::PopAndDestroy(); //converter
-	       	
-	       	INFO_PRINTF1(_L("Opaque data present."));
-	    	upsSubSession[subSessionCntr].Authorise(iPlatSecPass, serviceId, iDestination, iOpaqueDataStored, upsDecision, status);
-	    	}
-	    else
-	    	{
-	    	INFO_PRINTF1(_L("Opaque data NOT present."));
-	    	upsSubSession[subSessionCntr].Authorise(iPlatSecPass, serviceId, iDestination, upsDecision, status);
-	    	}
-	    
-
-	    if (iCancelPromptCall)
-	    	{
-	    	upsSubSession[subSessionCntr].CancelPrompt();
-	    	INFO_PRINTF1(_L("CancelPrompt called on UPS SubSession."));
-	    	}
-	    
-	    User::WaitForRequest(status);
-	    
-	    SetTestStepError(status.Int());
-	    User::LeaveIfError(status.Int());
-	    
-	    //Get the Notify Count AFTER call to Authorise
-	    User::LeaveIfError(RProperty::Get(KUidPSUPSTestNotifCategory, KUnNotifyCount, notifyCountAfterTest));
-	    
-	    INFO_PRINTF3(_L("NotifyCount Before Authorise ( %d ) <> NotifyCount After Authorise ( %d )"), notifyCountBeforeTest, notifyCountAfterTest);
-	    
-	    if ( iExpectedUpsDecision.Length() > 0 )
-	    	{
-	    	//Get the expected UPS decision for this iteration (specified in the INI file through 
-	    	//ExpectedUpsDecision data, separated using KIniFileDelimeter).
-	    	TBuf<32> expectedUpsDecision;
-	    	GetValueAt(cntr, iExpectedUpsDecision, KIniFileDelimeter, expectedUpsDecision);
-	    	
-	    	TPtrC upsDecisionString = TUpsDecisionToString(upsDecision);
-	    	
-	    	INFO_PRINTF3(_L("UPS Decision Expected ( %S ) <> UPS Decision Returned ( %S )"), &expectedUpsDecision, &upsDecisionString);
-	        
-	    	//Compare the expected and returned UPS decision
-	    	TEST( expectedUpsDecision.Compare(TUpsDecisionToString(upsDecision)) == 0);
-	    	}
-	    
-		VerifyAndPrintPromptDataL();
-		
-		//Check what user requested to do with SubSession for further iterations (if any).
-		if ( iUseSameSubSession )
-			{
-			INFO_PRINTF2(_L("Using UPS SubSession ( %d )."), subSessionCntr);
-			}
-		if ( iUseSameSubSessionAfterClose || iAlwaysOpenNewSession )
-			{
-			upsSubSession[subSessionCntr].Close();
-			INFO_PRINTF2(_L("UPS SubSession Closed ( %d )."), subSessionCntr);
-			dummyThread[subSessionCntr].Close();
-			}
-		else if ( iAlwaysOpenNewSubSession )
-			{
-			++subSessionCntr;
-			}
-			
-		if ( iAlwaysOpenNewSession  )
-			{
-			upsSession.Close();
-			INFO_PRINTF1(_L("UPS Session Closed."));
-			}
-	    } //End - for loop
-     
-    
-    //As with multiple clients , its better not to try to synchronize the calls which change the notify count.
-    //When all the concurrent calls are done , check the count finally through test step notifycount.
-    if (iPromptTriggerCount >= 0)
-    	{
-    	TEST( notifyCountAfterTest == (iNotifyCount+iPromptTriggerCount) );
-    	}    
-    
-    //Ensure all sub sessions are closed
-    for (TInt cntr=0; cntr<subSessionCntr; cntr++)
-    	{
-    	if ( upsSubSession[cntr].SubSessionHandle() != KNullHandle )
-    		{
-    		INFO_PRINTF2(_L("UPS SubSession Closed ( %d )."), cntr);
-    		upsSubSession[cntr].Close();
-    		dummyThread[cntr].Close();
-    		}
-    	}
-    
-    //Ensure session is closed
-    if ( upsSession.Handle() != KNullHandle )
-    	{
-    	upsSession.Close();
-		INFO_PRINTF1(_L("UPS Session Closed."));
-    	}    
-	
-	return TestStepResult();
-	}  // End of function
-
-
-TVerdict CIpUpsStep::doTestStepPostambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	//ReSet the property to specify working of testNotifier in P&S or filemode
-    User::LeaveIfError(RProperty::Set(KUidPSUPSTestNotifCategory, KUtFileOverride, iTestNotifierMode));
-    
-	return TestStepResult();
-	} // End of function.
-
-TBool CIpUpsStep::VerifyAndPrintPromptDataL()
-/**
- * @return - TBool - ETrue of prompt data returned matched the data expected as specified in INI file, else EFalse.
- * 
- */
-	{
-	//Get the Prompt Information
-	const TInt KMaxPromptDataLenght = 512;
-    HBufC8* buf=HBufC8::NewLC(KMaxPromptDataLenght);
-    TPtr8 bufPtr(buf->Des());
-
-	User::LeaveIfError(RProperty::Get(KUidPSUPSTestNotifCategory, KUnNotifyValues, bufPtr));
-	
-	RDesReadStream promptDataStream(bufPtr);
-		
-	iPromptData = UserPromptService::CPromptData::NewL();
-	CleanupStack::PushL(iPromptData);
-	iPromptData->InternalizeL(promptDataStream);
-	
-	INFO_PRINTF2(_L("Client Name ( %S )"), &iPromptData->iClientName);
-	INFO_PRINTF2(_L("Vendor Name ( %S )"), &iPromptData->iVendorName);
-	INFO_PRINTF2(_L("Destination ( %S )"), &iPromptData->iDestination);	
-	INFO_PRINTF2(_L("ClientSid   ( %08x )"), iPromptData->iClientSid.iId);
-	INFO_PRINTF2(_L("ServerSid   ( %08x )"), iPromptData->iServerSid.iId);
-	INFO_PRINTF2(_L("ServiceId   ( %08x )"), iPromptData->iServiceId);
-	
-	TInt count = iPromptData->iDescriptions.Count();
-   	for (TInt cntr = 0; cntr < count; ++cntr)
-      {
-      INFO_PRINTF3(_L("Descriptions(%d) : %S "), cntr, iPromptData->iDescriptions[cntr]);
-      }	
-	
-	//Print Dialog Flags
-	TBuf<64> dialogFlags;
-	
-	if ( iPromptData->iFlags & UserPromptService::ETrustedClient )
-		{
-		dialogFlags.Append(_L(" TrustedClient "));
-		}
-	if ( iPromptData->iFlags & UserPromptService::EBuiltInApp )
-		{
-		dialogFlags.Append(_L(" BuiltInApp "));
-		}
-	INFO_PRINTF2(_L("DialogFlags Set to  ( %S )"), &dialogFlags);
-	
-	TPtrC expectedDialogOptions;
-	TBuf<64> bufOptions;
-	
-	GetStringFromConfig(ConfigSection(),KExpectedDialogOptions, iExpectedDialogOptions);
-	
-	if (iExpectedDialogOptions.Length() > 0)
-		{
-		INFO_PRINTF2(_L("Options Expected ( %S )"), &iExpectedDialogOptions);
-		
-		//Check if options presented are as expected		
-		TBool result = OptionsFlagToString(iPromptData->iOptions, bufOptions);		
-		TEST(result != EFalse);
-		}
-	else
-		{
-		OptionsFlagToString(iPromptData->iOptions, bufOptions, EFalse);
-		}
-	
-	INFO_PRINTF2(_L("Options Presented ( %S )"), &bufOptions);
-	
-	TEST(iPromptData->iServiceId.iUid == iServiceUID);
-	TEST(iPromptData->iDestination == iDestination);
-	
-	CleanupStack::PopAndDestroy(2); //buf, iPromptData
-	
-	return EFalse;
-	} // End of function.
-
-TBool CIpUpsStep::OptionsFlagToString(TUint aOptions, TDes& aOptionString, TBool aCheckAgainstExpectedOpt)
-/** OptionsFlagToString converts the dialog option(s) presented to string and check if the presented option
- * 	is amongst the one which is expected(from INI file) or not if aCheckAgainstExpectedOpt is set to ETrue.
- *
- * @return - TBool - ETrue if presented options are the ones which are expected as specified in the INI file.
- * 
- */
-	{
-	_LIT(KOptionYes, "Yes");
-	_LIT(KOptionNo, "No");	
-	_LIT(KOptionSessionYes, "SessionYes");
-	_LIT(KOptionAlways, "Always");
-	_LIT(KOptionNever, "Never");
-	_LIT(KOptionSessionNo, "SessionNo");
-	
-	const TPtrC policyOptions[] = {KOptionYes(), KOptionNo(), KOptionSessionYes(), KOptionAlways(),
-									KOptionNever(), KOptionSessionNo()};
-		
-	TInt optionsCntr = 0;
-	TBool isOptionExpected = ETrue;
-		
-	aOptionString.Append(_L("-"));
-	
-	if (aOptions & UserPromptService::CPolicy::EYes)
-		{
-		aOptionString.Copy(policyOptions[optionsCntr]);
-		aOptionString.Append(_L("-"));
-		
-		if (aCheckAgainstExpectedOpt)
-			{
-			if (iExpectedDialogOptions.FindF(policyOptions[optionsCntr]) == KErrNotFound)
-				{
-				isOptionExpected = EFalse;
-				}
-			}
-		}
-	++optionsCntr;
-	
-	if (aOptions & UserPromptService::CPolicy::ENo)
-		{		
-		aOptionString.Append(policyOptions[optionsCntr]);
-		aOptionString.Append(_L("-"));
-		
-		if (aCheckAgainstExpectedOpt)
-			{
-			if (iExpectedDialogOptions.FindF(policyOptions[optionsCntr]) == KErrNotFound)
-				{
-				isOptionExpected = EFalse;
-				}
-			}
-		}
-	++optionsCntr;
-	
-	if (aOptions & UserPromptService::CPolicy::ESessionYes)
-		{		
-		aOptionString.Append(policyOptions[optionsCntr]);
-		aOptionString.Append(_L("-"));
-		
-		if (aCheckAgainstExpectedOpt)
-			{
-			if (iExpectedDialogOptions.FindF(policyOptions[optionsCntr]) == KErrNotFound)
-				{
-				isOptionExpected = EFalse;
-				}
-			}
-		}
-	++optionsCntr;
-	
-	if (aOptions & UserPromptService::CPolicy::EAlways)
-		{		
-		aOptionString.Append(policyOptions[optionsCntr]);
-		aOptionString.Append(_L("-"));
-		
-		if (aCheckAgainstExpectedOpt)
-			{
-			if (iExpectedDialogOptions.FindF(policyOptions[optionsCntr]) == KErrNotFound)
-				{
-				isOptionExpected = EFalse;
-				}
-			}
-		}
-	++optionsCntr;
-	
-	if (aOptions & UserPromptService::CPolicy::ENever)
-		{		
-		aOptionString.Append(policyOptions[optionsCntr]);
-		aOptionString.Append(_L("-"));
-		
-		if (aCheckAgainstExpectedOpt)
-			{
-			if (iExpectedDialogOptions.FindF(policyOptions[optionsCntr]) == KErrNotFound)
-				{
-				isOptionExpected = EFalse;
-				}
-			}
-		}
-	++optionsCntr;
-	
-	if (aOptions & UserPromptService::CPolicy::ESessionNo)
-		{		
-		aOptionString.Append(policyOptions[optionsCntr]);
-		aOptionString.Append(_L("-"));
-		
-		if (aCheckAgainstExpectedOpt)
-			{
-			if (iExpectedDialogOptions.FindF(policyOptions[optionsCntr]) == KErrNotFound)
-				{
-				isOptionExpected = EFalse;
-				}
-			}
-		}
-		
-	return isOptionExpected;
-	} // End of function.
-
-/** GetValueAt provides the value of data at a specific index (specified by aPos)
-*	String containing the values is specified thorugh aArrayString and multiple values 
-*	are separated by delimeter aDelimeter.
-*	aValue is returned. 
-*/
-void CIpUpsStep::GetValueAt(const TInt aPos, const TPtrC& aArrayString, const TChar aDelimeter, TDes& aValue)
-	{
-	TInt posCntr=0;	
-	TInt itemCntr = -1;	
-	
-	//Initialise it with blank string to avoid any previous copies
-	aValue.Copy(_L(""));
-	
-	while (posCntr < aArrayString.Length() && itemCntr != aPos)
-		{
-		if (aArrayString[posCntr] != aDelimeter)
-			{
-			aValue.Append(aArrayString[posCntr]);
-			}
-		else
-			{
-			++itemCntr;
-			//Is this the item we are looking for, if not, make space to next one
-			if (itemCntr != aPos)
-				{
-				aValue.Copy(_L(""));
-				}
-			}
-		++posCntr;
-		}	
-	}
-
-/* TUpsDecisionToString converts TUpsDecision to string.
-*/
-TPtrC CIpUpsStep::TUpsDecisionToString(TUpsDecision aDecision)
-	{
-	if(aDecision == EUpsDecYes)
-		{
-		return _L("Yes");
-		}
-	else if(aDecision == EUpsDecNo)
-		{
-		return _L("No");
-		}
-	else if(aDecision == EUpsDecSessionYes)
-		{
-		return _L("SessionYes");
-		}
-	else if(aDecision == EUpsDecSessionNo)
-		{
-		return _L("SessionNo");
-		}
-	else 
-		{
-		ERR_PRINTF1(_L("Invalid UPS Descision, returning No by default."));
-		return _L("No");
-		}
-	} // End of function.
-
-/* TUpsDecisionFromString converts string value to TUpsDecision.
-*/
-TUpsDecision CIpUpsStep::TUpsDecisionFromString(const TPtrC& aDecision)
-	{
-	if(aDecision.CompareF(_L("Yes"))==0)
-		{
-		return EUpsDecYes;
-		}
-	else if(aDecision.CompareF(_L("No"))==0)
-		{
-		return EUpsDecNo;
-		}
-	else if(aDecision.CompareF(_L("SessionYes"))==0)
-		{
-		return EUpsDecSessionYes;
-		}
-	else if(aDecision.CompareF(_L("SessionNo"))==0)
-		{
-		return EUpsDecSessionNo;
-		}
-	else 
-		{
-		ERR_PRINTF1(_L("Invalid UPS Descision, returning No by default."));
-		return EUpsDecNo;
-		}
-	} // End of function.
-
-/* ButtonToOption converts string value of button presented to CPolicy::TOptions.
-*/
-UserPromptService::CPolicy::TOptions CIpUpsStep::ButtonToOption(const TPtrC& aButton)
-	{
-	if(aButton.CompareF(_L("Yes"))==0)
-		{
-		return UserPromptService::CPolicy::EYes;
-		}
-	else if(aButton.CompareF(_L("No"))==0)
-		{
-		return UserPromptService::CPolicy::ENo;
-		}
-	else if(aButton.CompareF(_L("Session"))==0)
-		{
-		return UserPromptService::CPolicy::ESession;
-		}
-	else if(aButton.CompareF(_L("SessionYes"))==0)
-		{
-		return UserPromptService::CPolicy::ESessionYes;
-		}
-	else if(aButton.CompareF(_L("Always"))==0)
-		{
-		return UserPromptService::CPolicy::EAlways;
-		}	
-	else if(aButton.CompareF(_L("Never"))==0)
-		{
-		return UserPromptService::CPolicy::ENever;
-		}
-	else if(aButton.CompareF(_L("SessionNo"))==0)
-		{
-		return UserPromptService::CPolicy::ESessionNo;
-		}	
-	else 
-		{
-		ERR_PRINTF1(_L("Invalid Button Option, returning Policy Option No by default."));
-		return UserPromptService::CPolicy::ENo;
-		}				
-	}  // End of function.