policymanagement/policyengine/policyengineserver/src/PolicyProcessor.cpp
changeset 40 588ad05716be
parent 0 b497e44ab2fc
child 36 1ff291ad36ba
child 44 39aa16f3fdc2
equal deleted inserted replaced
24:bf47f3b79154 40:588ad05716be
   750 	TUserResponse response = EUserDeny;
   750 	TUserResponse response = EUserDeny;
   751 
   751 
   752 	if ( name.Length() && fingerPrint.Length())
   752 	if ( name.Length() && fingerPrint.Length())
   753 	{
   753 	{
   754 		//create notifier
   754 		//create notifier
   755 		RNotifier notifier;
   755 /*		RNotifier notifier;
   756 		CleanupClosePushL( notifier);
   756 		CleanupClosePushL( notifier);
   757 		User::LeaveIfError( notifier.Connect() );
   757 		User::LeaveIfError( notifier.Connect() );
   758 		
   758 */		
   759 		//create parameter descriptor
   759 		//create parameter descriptor
   760 		TBuf8<100> responseBuf;
   760 		TBuf8<100> responseBuf;
   761 		HBufC8 * data = HBufC8::NewLC( name.Length() + fingerPrint.Length() + 1);
   761 		HBufC8 * data = HBufC8::NewLC( name.Length() + fingerPrint.Length() + 1);
   762 		TPtr8 ptr = data->Des();
   762 		TPtr8 ptr = data->Des();
   763 		ptr.Append(name);
   763 		ptr.Append(name);
   764 		ptr.Append(KDelimeterChar);
   764 		ptr.Append(KDelimeterChar);
   765 		ptr.Append(fingerPrint.Left(4));
   765 		ptr.Append(fingerPrint.Left(4));
   766 
   766 
   767 		//create CAsyncHandler to Auto start/stop CActiveScheduler
   767 		//create CAsyncHandler to Auto start/stop CActiveScheduler
   768 		CASyncHandler * async = CASyncHandler::NewLC();
   768 		CASyncHandler * async = CASyncHandler::NewLC();
   769 		notifier.StartNotifierAndGetResponse( async->GetRequestStatus(), KUidPolicyEngineUi, ptr, responseBuf);
   769 //		notifier.StartNotifierAndGetResponse( async->GetRequestStatus(), KUidPolicyEngineUi, ptr, responseBuf);
   770 		
   770 		
   771 		//Start CActiveScheduler and execute stop when request is completed
   771 		//Start CActiveScheduler and execute stop when request is completed
   772 		async->WaitForRequest();
   772 		async->WaitForRequest();
   773 		CPolicyEngineServer::SetActiveSubSession( this);	
   773 		CPolicyEngineServer::SetActiveSubSession( this);	
   774 
   774 
   775 		
   775 		
   776 		if ( async->GetRequestStatus() > 0) //request pending...
   776 		if ( async->GetRequestStatus() > 0) //request pending...
   777 		{
   777 		{
   778 			notifier.CancelNotifier( KUidPolicyEngineUi);	
   778 //			notifier.CancelNotifier( KUidPolicyEngineUi);	
   779 		}
   779 		}
   780 		else
   780 		else
   781 		{
   781 		{
   782 			//Check response
   782 			//Check response
   783 			if ( responseBuf == KUserAcceptMark)
   783 			if ( responseBuf == KUserAcceptMark)
   785 				RDEBUG("PolicyEngineServer: CPolicyProcessor user accept corporate policy!");
   785 				RDEBUG("PolicyEngineServer: CPolicyProcessor user accept corporate policy!");
   786 				response = EUserAccept;
   786 				response = EUserAccept;
   787 			}
   787 			}
   788 		}
   788 		}
   789 		
   789 		
   790 		CleanupStack::PopAndDestroy( 3, &notifier);	//notifier, data, CASyncHandler
   790 	//	CleanupStack::PopAndDestroy( 3, &notifier);	//notifier, data, CASyncHandler
       
   791 	CleanupStack::PopAndDestroy( 2);
   791 		
   792 		
   792 		
   793 		
   793 	}
   794 	}
   794 
   795 
   795 	MakeBooleanResponseL( response == EUserAccept, aResponseElement);
   796 	MakeBooleanResponseL( response == EUserAccept, aResponseElement);