AnyConnect Secure Mobility Client  4.10.06090
PreferenceUpdate.h
1 /**************************************************************************
2 * Copyright © 2009, Cisco Systems, All Rights Reserved
3 ***************************************************************************
4 *
5 * File: PreferenceUpdate.h
6 * Author: Ivonne Olavarrieta Arruti
7 * Date: 06/2009
8 *
9 ***************************************************************************
10 *
11 * Preference Update Interface declaration for the Client API.
12 *
13 ***************************************************************************/
14 
15 #ifndef _PREFERENCEUPDATE_
16 #define _PREFERENCEUPDATE_
17 
18 #include "api.h"
19 
20 class VPN_VPNAPI IPreferenceUpdateCB
21 {
22 public:
23  /*
24  ** IPreferenceUpdateCB::OnLoadPreferencesComplete
25  ** Callback method invoked when the loadPreferences operation has completed
26  ** and preferences have been reloaded.
27  **
28  ** NOTE: Implementations of this callback must be thread safe.
29  */
30  virtual void OnLoadPreferencesComplete() = 0;
31 
32  /*
33  ** bool IPreferenceUpdateCB::IsPreferenceOverridable
34  ** Callback method invoked during preference loading to verify if the specified preference
35  ** pertaining is overridable by consumer.
36  **
37  ** IN const PreferenceId ePreferenceId
38  **
39  ** NOTE: Implementations of this callback must be thread safe.
40  */
41  virtual bool IsPreferenceOverridable(const PreferenceId ePreferenceId) = 0;
42 
43  /*
44  ** void IPreferenceUpdateCB::OverridePreferenceValue
45  ** Callback method invoked during preference loading to override the specified value,
46  ** if necessary.
47  ** rbOverriden must be set to true if the preference value was overriden by consumer.
48  **
49  ** IN const PreferenceId ePreferenceId
50  ** INOUT tstring rPrefenceValue
51  ** OUT bool& rbOverriden
52  **
53  ** NOTE: Implementations of this callback must be thread safe.
54  */
55  virtual void OverridePreferenceValue(const PreferenceId ePreferenceId,
56  tstring& rPrefenceValue,
57  bool& rbOverriden) = 0;
58 
59 protected:
60  // Deletions should not be done via a callback Interface base class pointer.
61  // By declaring the destructor as protected, we prevent this.
62  //
63  virtual ~IPreferenceUpdateCB() {}
64 };
65 
66 
67 
68 #endif // _PREFERENCEUPDATE_
69 
#define tstring
Definition: api.h:35
PreferenceId
Definition: api.h:274
Definition: PreferenceUpdate.h:20