sysstatemgmt/systemstateplugins/adptplugin/inc/stateadaptationref.h
branchRCL_3
changeset 61 8cb079868133
parent 60 ccb4f6b3db21
equal deleted inserted replaced
60:ccb4f6b3db21 61:8cb079868133
     1 // Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
    25   *********Need for the class*********
    25   *********Need for the class*********
    26   
    26   
    27   On a device when NotifyCoopSysEvent is called, State Adaptation Plug-in would request for notification 
    27   On a device when NotifyCoopSysEvent is called, State Adaptation Plug-in would request for notification 
    28   from the Cooperating System for 'aEvent'.
    28   from the Cooperating System for 'aEvent'.
    29   
    29   
    30   The reference implementation has to complete the notification request with KErrNotSupported.
    30   On HRP/Techview,the reference implementation has to complete the notification request with KErrNotSupported
       
    31   since there is no Cooperating System on HRP/Techview.
    31   
    32   
    32   But this implementation will cause problems in the following scenario.
    33   But this implementation will cause problems in the following scenario.
    33   
    34   
    34   *********Problem*********
    35   *********Problem*********
    35   
    36   
    42   by calling NotifyCoopSysEvent .
    43   by calling NotifyCoopSysEvent .
    43   
    44   
    44   In this context if NotifyCoopSysEvent just completes the message immediately this results in a infinite 
    45   In this context if NotifyCoopSysEvent just completes the message immediately this results in a infinite 
    45   loop and starves other active objects with same priority.
    46   loop and starves other active objects with same priority.
    46   
    47   
    47   This makes testing of Adaptation servers notification functionality impossible on PlatSim/device.
    48   This makes testing of Adaptation servers notification functionality impossible on HRP/Techview.
    48   
    49   
    49   *********Solution*********
    50   *********Solution*********
    50 
    51 
    51   To solve this problem NotifyCoopSysEvent will forward the notification request from adaptation server 
    52   To solve this problem NotifyCoopSysEvent will forward the notification request from adaptation server 
    52   to the test active object(CStateAdaptationRefEventHandler) which has lesser priority compared to 
    53   to the test active object(CStateAdaptationRefEventHandler) which has lesser priority compared to 
    94 	void RequestCoopSysPerformRfsActions(TSsmRfsType aRfsType, TRequestStatus& aStatus);
    95 	void RequestCoopSysPerformRfsActions(TSsmRfsType aRfsType, TRequestStatus& aStatus);
    95 	void RequestCancel();
    96 	void RequestCancel();
    96 
    97 
    97 	void NotifyCoopSysEvent(TDes8& aEvent, TRequestStatus& aStatus);
    98 	void NotifyCoopSysEvent(TDes8& aEvent, TRequestStatus& aStatus);
    98 	void NotifyCancel();
    99 	void NotifyCancel();
    99 	
   100 
   100 private:
   101 private:
   101 	CStateAdaptationRef();
   102 	CStateAdaptationRef();
   102 	void ConstructL();
   103 	void ConstructL();
   103 	//Helper function to check for P&S Key
       
   104     TBool IsTestPsKeyDefined();
       
   105 
   104 
   106 private:
   105 private:
   107     CStateRefAdaptationTimer* iTimer;
   106 	CStateRefAdaptationTimer* iTimer;	
   108 	MStateAdaptation* iSaaStateAdaptationDll;
       
   109 	RLibrary iSaaStateAdaptationLib;
       
   110 	};
   107 	};
   111 
   108 
   112 
   109 
   113 
   110 
   114 
   111