![]() |
AnyConnect Secure Mobility Client 4.8.02045
|
00001 /************************************************************************** 00002 * Copyright © 2009, Cisco Systems, All Rights Reserved 00003 *************************************************************************** 00004 * 00005 * File: PreferenceUpdate.h 00006 * Author: Ivonne Olavarrieta Arruti 00007 * Date: 06/2009 00008 * 00009 *************************************************************************** 00010 * 00011 * Preference Update Interface declaration for the Client API. 00012 * 00013 ***************************************************************************/ 00014 00015 #ifndef _PREFERENCEUPDATE_ 00016 #define _PREFERENCEUPDATE_ 00017 00018 #include "api.h" 00019 00020 class VPN_VPNAPI IPreferenceUpdateCB 00021 { 00022 public: 00023 /* 00024 ** IPreferenceUpdateCB::OnLoadPreferencesComplete 00025 ** Callback method invoked when the loadPreferences operation has completed 00026 ** and preferences have been reloaded. 00027 ** 00028 ** NOTE: Implementations of this callback must be thread safe. 00029 */ 00030 virtual void OnLoadPreferencesComplete() = 0; 00031 00032 /* 00033 ** bool IPreferenceUpdateCB::IsPreferenceOverridable 00034 ** Callback method invoked during preference loading to verify if the specified preference 00035 ** pertaining is overridable by consumer. 00036 ** 00037 ** IN const PreferenceId ePreferenceId 00038 ** 00039 ** NOTE: Implementations of this callback must be thread safe. 00040 */ 00041 virtual bool IsPreferenceOverridable(const PreferenceId ePreferenceId) = 0; 00042 00043 /* 00044 ** void IPreferenceUpdateCB::OverridePreferenceValue 00045 ** Callback method invoked during preference loading to override the specified value, 00046 ** if necessary. 00047 ** rbOverriden must be set to true if the preference value was overriden by consumer. 00048 ** 00049 ** IN const PreferenceId ePreferenceId 00050 ** INOUT tstring rPrefenceValue 00051 ** OUT bool& rbOverriden 00052 ** 00053 ** NOTE: Implementations of this callback must be thread safe. 00054 */ 00055 virtual void OverridePreferenceValue(const PreferenceId ePreferenceId, 00056 tstring& rPrefenceValue, 00057 bool& rbOverriden) = 0; 00058 00059 protected: 00060 // Deletions should not be done via a callback Interface base class pointer. 00061 // By declaring the destructor as protected, we prevent this. 00062 // 00063 virtual ~IPreferenceUpdateCB() {} 00064 }; 00065 00066 00067 00068 #endif // _PREFERENCEUPDATE_ 00069