From: JinWang An <35290168+jinwangan@users.noreply.github.com> Date: Tue, 22 Sep 2020 06:18:02 +0000 (+0900) Subject: [SystemSettings] Add lock for EventHandler (#2036) X-Git-Tag: accepted/tizen/unified/20210219.040944~392 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=09a62ce3c437b53a19ba77f9748f7aa431634a39;p=platform%2Fcore%2Fcsapi%2Ftizenfx.git [SystemSettings] Add lock for EventHandler (#2036) * [SystemSettings] Add lock for EventHandler Signed-off-by: JinWang An * Fix indent for Lockobj Signed-off-by: JinWang An --- diff --git a/src/Tizen.System.SystemSettings/Tizen.System.SystemSettings/SystemSettings.cs b/src/Tizen.System.SystemSettings/Tizen.System.SystemSettings/SystemSettings.cs old mode 100755 new mode 100644 index 8b7bfa2..26de96d --- a/src/Tizen.System.SystemSettings/Tizen.System.SystemSettings/SystemSettings.cs +++ b/src/Tizen.System.SystemSettings/Tizen.System.SystemSettings/SystemSettings.cs @@ -29,6 +29,11 @@ namespace Tizen.System public static class SystemSettings { /// + /// Lock for EventHandlers. + /// + private static readonly object LockObj = new object(); + + /// /// The file path of the current ringtone. /// /// http://tizen.org/privilege/systemsettings.admin @@ -1203,30 +1208,36 @@ namespace Tizen.System { add { - if (s_incomingCallRingtoneChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.IncomingCallRingtone, s_incomingCallRingtoneChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_incomingCallRingtoneChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.IncomingCallRingtone, s_incomingCallRingtoneChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_incomingCallRingtoneChanged += value; } - s_incomingCallRingtoneChanged += value; } remove { - if (s_incomingCallRingtoneChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_incomingCallRingtoneChanged -= value; - if (s_incomingCallRingtoneChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.IncomingCallRingtone, s_incomingCallRingtoneChangedCallback); - if (ret != SystemSettingsError.None) + if (s_incomingCallRingtoneChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_incomingCallRingtoneChanged -= value; + if (s_incomingCallRingtoneChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.IncomingCallRingtone, s_incomingCallRingtoneChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1255,30 +1266,36 @@ namespace Tizen.System { add { - if (s_wallpaperHomeScreenChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.WallpaperHomeScreen, s_wallpaperHomeScreenChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_wallpaperHomeScreenChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.WallpaperHomeScreen, s_wallpaperHomeScreenChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_wallpaperHomeScreenChanged += value; } - s_wallpaperHomeScreenChanged += value; } remove { - if (s_wallpaperHomeScreenChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_wallpaperHomeScreenChanged -= value; - if (s_wallpaperHomeScreenChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.WallpaperHomeScreen, s_wallpaperHomeScreenChangedCallback); - if (ret != SystemSettingsError.None) + if (s_wallpaperHomeScreenChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_wallpaperHomeScreenChanged -= value; + if (s_wallpaperHomeScreenChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.WallpaperHomeScreen, s_wallpaperHomeScreenChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1307,30 +1324,36 @@ namespace Tizen.System { add { - if (s_wallpaperLockScreenChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.WallpaperLockScreen, s_wallpaperLockScreenChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_wallpaperLockScreenChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.WallpaperLockScreen, s_wallpaperLockScreenChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_wallpaperLockScreenChanged += value; } - s_wallpaperLockScreenChanged += value; } remove { - if (s_wallpaperLockScreenChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_wallpaperLockScreenChanged -= value; - if (s_wallpaperLockScreenChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.WallpaperLockScreen, s_wallpaperLockScreenChangedCallback); - if (ret != SystemSettingsError.None) + if (s_wallpaperLockScreenChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_wallpaperLockScreenChanged -= value; + if (s_wallpaperLockScreenChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.WallpaperLockScreen, s_wallpaperLockScreenChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1358,30 +1381,36 @@ namespace Tizen.System { add { - if (s_fontSizeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.FontSize, s_fontSizeChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_fontSizeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.FontSize, s_fontSizeChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_fontSizeChanged += value; } - s_fontSizeChanged += value; } remove { - if (s_fontSizeChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_fontSizeChanged -= value; - if (s_fontSizeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.FontSize, s_fontSizeChangedCallback); - if (ret != SystemSettingsError.None) + if (s_fontSizeChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_fontSizeChanged -= value; + if (s_fontSizeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.FontSize, s_fontSizeChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1409,30 +1438,36 @@ namespace Tizen.System { add { - if (s_fontTypeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.FontType, s_fontTypeChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_fontTypeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.FontType, s_fontTypeChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_fontTypeChanged += value; } - s_fontTypeChanged += value; } remove { - if (s_fontTypeChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_fontTypeChanged -= value; - if (s_fontTypeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.FontType, s_fontTypeChangedCallback); - if (ret != SystemSettingsError.None) + if (s_fontTypeChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_fontTypeChanged -= value; + if (s_fontTypeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.FontType, s_fontTypeChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1460,30 +1495,36 @@ namespace Tizen.System { add { - if (s_motionActivationChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.MotionActivationEnabled, s_motionActivationChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_motionActivationChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.MotionActivationEnabled, s_motionActivationChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_motionActivationChanged += value; } - s_motionActivationChanged += value; } remove { - if (s_motionActivationChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_motionActivationChanged -= value; - if (s_motionActivationChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.MotionActivationEnabled, s_motionActivationChangedCallback); - if (ret != SystemSettingsError.None) + if (s_motionActivationChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_motionActivationChanged -= value; + if (s_motionActivationChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.MotionActivationEnabled, s_motionActivationChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1512,30 +1553,36 @@ namespace Tizen.System { add { - if (s_emailAlertRingtoneChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.EmailAlertRingtone, s_emailAlertRingtoneChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_emailAlertRingtoneChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.EmailAlertRingtone, s_emailAlertRingtoneChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_emailAlertRingtoneChanged += value; } - s_emailAlertRingtoneChanged += value; } remove { - if (s_emailAlertRingtoneChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_emailAlertRingtoneChanged -= value; - if (s_emailAlertRingtoneChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.EmailAlertRingtone, s_emailAlertRingtoneChangedCallback); - if (ret != SystemSettingsError.None) + if (s_emailAlertRingtoneChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_emailAlertRingtoneChanged -= value; + if (s_emailAlertRingtoneChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.EmailAlertRingtone, s_emailAlertRingtoneChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1563,30 +1610,36 @@ namespace Tizen.System { add { - if (s_usbDebuggingSettingChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.UsbDebuggingEnabled, s_usbDebuggingSettingChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_usbDebuggingSettingChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.UsbDebuggingEnabled, s_usbDebuggingSettingChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_usbDebuggingSettingChanged += value; } - s_usbDebuggingSettingChanged += value; } remove { - if (s_usbDebuggingSettingChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_usbDebuggingSettingChanged -= value; - if (s_usbDebuggingSettingChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.UsbDebuggingEnabled, s_usbDebuggingSettingChangedCallback); - if (ret != SystemSettingsError.None) + if (s_usbDebuggingSettingChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_usbDebuggingSettingChanged -= value; + if (s_usbDebuggingSettingChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.UsbDebuggingEnabled, s_usbDebuggingSettingChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1614,30 +1667,36 @@ namespace Tizen.System { add { - if (s_data3GNetworkSettingChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.Data3GNetworkEnabled, s_data3GNetworkSettingChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_data3GNetworkSettingChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.Data3GNetworkEnabled, s_data3GNetworkSettingChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_data3GNetworkSettingChanged += value; } - s_data3GNetworkSettingChanged += value; } remove { - if (s_data3GNetworkSettingChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_data3GNetworkSettingChanged -= value; - if (s_data3GNetworkSettingChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.Data3GNetworkEnabled, s_data3GNetworkSettingChangedCallback); - if (ret != SystemSettingsError.None) + if (s_data3GNetworkSettingChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_data3GNetworkSettingChanged -= value; + if (s_data3GNetworkSettingChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.Data3GNetworkEnabled, s_data3GNetworkSettingChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1666,31 +1725,37 @@ namespace Tizen.System { add { - if (s_lockscreenAppChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LockScreenApp, s_lockscreenAppChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_lockscreenAppChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LockScreenApp, s_lockscreenAppChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_lockscreenAppChanged += value; } - s_lockscreenAppChanged += value; } remove { - if (s_lockscreenAppChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - - s_lockscreenAppChanged -= value; - if (s_lockscreenAppChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LockScreenApp, s_lockscreenAppChangedCallback); - if (ret != SystemSettingsError.None) + if (s_lockscreenAppChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + + s_lockscreenAppChanged -= value; + if (s_lockscreenAppChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LockScreenApp, s_lockscreenAppChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1718,30 +1783,36 @@ namespace Tizen.System { add { - if (s_localeCountryChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LocaleCountry, s_localeCountryChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_localeCountryChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LocaleCountry, s_localeCountryChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_localeCountryChanged += value; } - s_localeCountryChanged += value; } remove { - if (s_localeCountryChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_localeCountryChanged -= value; - if (s_localeCountryChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LocaleCountry, s_localeCountryChangedCallback); - if (ret != SystemSettingsError.None) + if (s_localeCountryChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_localeCountryChanged -= value; + if (s_localeCountryChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LocaleCountry, s_localeCountryChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1769,30 +1840,42 @@ namespace Tizen.System { add { - if (s_localeLanguageChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LocaleLanguage, s_localeLanguageChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (null == value) + throw SystemSettingsExceptionFactory.CreateException(SystemSettingsError.InvalidParameter, "Error invalid callback"); + + if (s_localeLanguageChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LocaleLanguage, s_localeLanguageChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_localeLanguageChanged += value; } - s_localeLanguageChanged += value; } remove { - if (s_localeLanguageChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_localeLanguageChanged -= value; - if (s_localeLanguageChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LocaleLanguage, s_localeLanguageChangedCallback); - if (ret != SystemSettingsError.None) + if (null == value) + throw SystemSettingsExceptionFactory.CreateException(SystemSettingsError.InvalidParameter, "Error invalid callback"); + + if (s_localeLanguageChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_localeLanguageChanged -= value; + if (s_localeLanguageChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LocaleLanguage, s_localeLanguageChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1820,30 +1903,36 @@ namespace Tizen.System { add { - if (s_localeTimeFormat24HourChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LocaleTimeFormat24HourEnabled, s_localeTimeFormat24HourChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_localeTimeFormat24HourChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LocaleTimeFormat24HourEnabled, s_localeTimeFormat24HourChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_localeTimeFormat24HourChanged += value; } - s_localeTimeFormat24HourChanged += value; } remove { - if (s_localeTimeFormat24HourChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_localeTimeFormat24HourChanged -= value; - if (s_localeTimeFormat24HourChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LocaleTimeFormat24HourEnabled, s_localeTimeFormat24HourChangedCallback); - if (ret != SystemSettingsError.None) + if (s_localeTimeFormat24HourChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_localeTimeFormat24HourChanged -= value; + if (s_localeTimeFormat24HourChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LocaleTimeFormat24HourEnabled, s_localeTimeFormat24HourChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1871,30 +1960,36 @@ namespace Tizen.System { add { - if (s_localeTimeZoneChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LocaleTimeZone, s_localeTimeZoneChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_localeTimeZoneChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LocaleTimeZone, s_localeTimeZoneChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_localeTimeZoneChanged += value; } - s_localeTimeZoneChanged += value; } remove { - if (s_localeTimeZoneChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_localeTimeZoneChanged -= value; - if (s_localeTimeZoneChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LocaleTimeZone, s_localeTimeZoneChangedCallback); - if (ret != SystemSettingsError.None) + if (s_localeTimeZoneChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_localeTimeZoneChanged -= value; + if (s_localeTimeZoneChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LocaleTimeZone, s_localeTimeZoneChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1923,30 +2018,36 @@ namespace Tizen.System { add { - if (s_timeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.Time, s_timeChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_timeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.Time, s_timeChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_timeChanged += value; } - s_timeChanged += value; } remove { - if (s_timeChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_timeChanged -= value; - if (s_timeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.Time, s_timeChangedCallback); - if (ret != SystemSettingsError.None) + if (s_timeChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_timeChanged -= value; + if (s_timeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.Time, s_timeChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -1974,30 +2075,36 @@ namespace Tizen.System { add { - if (s_soundLockChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundLockEnabled, s_soundLockChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_soundLockChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundLockEnabled, s_soundLockChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_soundLockChanged += value; } - s_soundLockChanged += value; } remove { - if (s_soundLockChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_soundLockChanged -= value; - if (s_soundLockChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundLockEnabled, s_soundLockChangedCallback); - if (ret != SystemSettingsError.None) + if (s_soundLockChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_soundLockChanged -= value; + if (s_soundLockChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundLockEnabled, s_soundLockChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2025,30 +2132,36 @@ namespace Tizen.System { add { - if (s_soundSilentModeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundSilentModeEnabled, s_soundSilentModeChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_soundSilentModeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundSilentModeEnabled, s_soundSilentModeChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_soundSilentModeChanged += value; } - s_soundSilentModeChanged += value; } remove { - if (s_soundSilentModeChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_soundSilentModeChanged -= value; - if (s_soundSilentModeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundSilentModeEnabled, s_soundSilentModeChangedCallback); - if (ret != SystemSettingsError.None) + if (s_soundSilentModeChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_soundSilentModeChanged -= value; + if (s_soundSilentModeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundSilentModeEnabled, s_soundSilentModeChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2076,31 +2189,37 @@ namespace Tizen.System { add { - if (s_soundTouchChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundTouchEnabled, s_soundTouchChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_soundTouchChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundTouchEnabled, s_soundTouchChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_soundTouchChanged += value; } - s_soundTouchChanged += value; } remove { - if (s_soundTouchChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_soundTouchChanged -= value; - if (s_soundTouchChanged == null) - + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundTouchEnabled, s_soundTouchChangedCallback); - if (ret != SystemSettingsError.None) + if (s_soundTouchChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_soundTouchChanged -= value; + if (s_soundTouchChanged == null) + { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundTouchEnabled, s_soundTouchChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2128,30 +2247,36 @@ namespace Tizen.System { add { - if (s_displayScreenRotationAutoChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.DisplayScreenRotationAutoEnabled, s_displayScreenRotationAutoChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_displayScreenRotationAutoChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.DisplayScreenRotationAutoEnabled, s_displayScreenRotationAutoChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_displayScreenRotationAutoChanged += value; } - s_displayScreenRotationAutoChanged += value; } remove { - if (s_displayScreenRotationAutoChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_displayScreenRotationAutoChanged -= value; - if (s_displayScreenRotationAutoChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.DisplayScreenRotationAutoEnabled, s_displayScreenRotationAutoChangedCallback); - if (ret != SystemSettingsError.None) + if (s_displayScreenRotationAutoChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_displayScreenRotationAutoChanged -= value; + if (s_displayScreenRotationAutoChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.DisplayScreenRotationAutoEnabled, s_displayScreenRotationAutoChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2179,30 +2304,36 @@ namespace Tizen.System { add { - if (s_deviceNameChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.DeviceName, s_deviceNameChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_deviceNameChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.DeviceName, s_deviceNameChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_deviceNameChanged += value; } - s_deviceNameChanged += value; } remove { - if (s_deviceNameChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_deviceNameChanged -= value; - if (s_deviceNameChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.DeviceName, s_deviceNameChangedCallback); - if (ret != SystemSettingsError.None) + if (s_deviceNameChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_deviceNameChanged -= value; + if (s_deviceNameChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.DeviceName, s_deviceNameChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2230,30 +2361,36 @@ namespace Tizen.System { add { - if (s_motionSettingChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.MotionEnabled, s_motionSettingChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_motionSettingChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.MotionEnabled, s_motionSettingChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_motionSettingChanged += value; } - s_motionSettingChanged += value; } remove { - if (s_motionSettingChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_motionSettingChanged -= value; - if (s_motionSettingChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.MotionEnabled, s_motionSettingChangedCallback); - if (ret != SystemSettingsError.None) + if (s_motionSettingChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_motionSettingChanged -= value; + if (s_motionSettingChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.MotionEnabled, s_motionSettingChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2282,30 +2419,36 @@ namespace Tizen.System { add { - if (s_networkWifiNotificationChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.NetworkWifiNotificationEnabled, s_networkWifiNotificationChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_networkWifiNotificationChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.NetworkWifiNotificationEnabled, s_networkWifiNotificationChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_networkWifiNotificationChanged += value; } - s_networkWifiNotificationChanged += value; } remove { - if (s_networkWifiNotificationChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_networkWifiNotificationChanged -= value; - if (s_networkWifiNotificationChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.NetworkWifiNotificationEnabled, s_networkWifiNotificationChangedCallback); - if (ret != SystemSettingsError.None) + if (s_networkWifiNotificationChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_networkWifiNotificationChanged -= value; + if (s_networkWifiNotificationChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.NetworkWifiNotificationEnabled, s_networkWifiNotificationChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2333,30 +2476,36 @@ namespace Tizen.System { add { - if (s_networkFlightModeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.NetworkFlightModeEnabled, s_networkFlightModeChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_networkFlightModeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.NetworkFlightModeEnabled, s_networkFlightModeChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_networkFlightModeChanged += value; } - s_networkFlightModeChanged += value; } remove { - if (s_networkFlightModeChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_networkFlightModeChanged -= value; - if (s_networkFlightModeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.NetworkFlightModeEnabled, s_networkFlightModeChangedCallback); - if (ret != SystemSettingsError.None) + if (s_networkFlightModeChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_networkFlightModeChanged -= value; + if (s_networkFlightModeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.NetworkFlightModeEnabled, s_networkFlightModeChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2384,30 +2533,36 @@ namespace Tizen.System { add { - if (s_screenBacklightTimeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.ScreenBacklightTime, s_screenBacklightTimeChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_screenBacklightTimeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.ScreenBacklightTime, s_screenBacklightTimeChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_screenBacklightTimeChanged += value; } - s_screenBacklightTimeChanged += value; } remove { - if (s_screenBacklightTimeChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_screenBacklightTimeChanged -= value; - if (s_screenBacklightTimeChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.ScreenBacklightTime, s_screenBacklightTimeChangedCallback); - if (ret != SystemSettingsError.None) + if (s_screenBacklightTimeChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_screenBacklightTimeChanged -= value; + if (s_screenBacklightTimeChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.ScreenBacklightTime, s_screenBacklightTimeChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2436,30 +2591,36 @@ namespace Tizen.System { add { - if (s_soundNotificationChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundNotification, s_soundNotificationChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_soundNotificationChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundNotification, s_soundNotificationChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_soundNotificationChanged += value; } - s_soundNotificationChanged += value; } remove { - if (s_soundNotificationChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_soundNotificationChanged -= value; - if (s_soundNotificationChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundNotification, s_soundNotificationChangedCallback); - if (ret != SystemSettingsError.None) + if (s_soundNotificationChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_soundNotificationChanged -= value; + if (s_soundNotificationChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundNotification, s_soundNotificationChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2487,30 +2648,36 @@ namespace Tizen.System { add { - if (s_soundNotificationRepetitionPeriodChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundNotificationRepetitionPeriod, s_soundNotificationRepetitionPeriodChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_soundNotificationRepetitionPeriodChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.SoundNotificationRepetitionPeriod, s_soundNotificationRepetitionPeriodChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_soundNotificationRepetitionPeriodChanged += value; } - s_soundNotificationRepetitionPeriodChanged += value; } remove { - if (s_soundNotificationRepetitionPeriodChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_soundNotificationRepetitionPeriodChanged -= value; - if (s_soundNotificationRepetitionPeriodChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundNotificationRepetitionPeriod, s_soundNotificationRepetitionPeriodChangedCallback); - if (ret != SystemSettingsError.None) + if (s_soundNotificationRepetitionPeriodChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_soundNotificationRepetitionPeriodChanged -= value; + if (s_soundNotificationRepetitionPeriodChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.SoundNotificationRepetitionPeriod, s_soundNotificationRepetitionPeriodChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2538,30 +2705,36 @@ namespace Tizen.System { add { - if (s_lockStateChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LockState, s_lockStateChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_lockStateChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.LockState, s_lockStateChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_lockStateChanged += value; } - s_lockStateChanged += value; } remove { - if (s_lockStateChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_lockStateChanged -= value; - if (s_lockStateChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LockState, s_lockStateChangedCallback); - if (ret != SystemSettingsError.None) + if (s_lockStateChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_lockStateChanged -= value; + if (s_lockStateChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.LockState, s_lockStateChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2589,30 +2762,36 @@ namespace Tizen.System { add { - if (s_adsIdChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AdsId, s_adsIdChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_adsIdChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AdsId, s_adsIdChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_adsIdChanged += value; } - s_adsIdChanged += value; } remove { - if (s_adsIdChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_adsIdChanged -= value; - if (s_adsIdChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AdsId, s_adsIdChangedCallback); - if (ret != SystemSettingsError.None) + if (s_adsIdChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_adsIdChanged -= value; + if (s_adsIdChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AdsId, s_adsIdChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2641,30 +2820,36 @@ namespace Tizen.System { add { - if (s_ultraDataSaveChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.UltraDataSave, s_ultraDataSaveChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_ultraDataSaveChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.UltraDataSave, s_ultraDataSaveChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_ultraDataSaveChanged += value; } - s_ultraDataSaveChanged += value; } remove { - if (s_ultraDataSaveChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_ultraDataSaveChanged -= value; - if (s_ultraDataSaveChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.UltraDataSave, s_ultraDataSaveChangedCallback); - if (ret != SystemSettingsError.None) + if (s_ultraDataSaveChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_ultraDataSaveChanged -= value; + if (s_ultraDataSaveChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.UltraDataSave, s_ultraDataSaveChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2693,30 +2878,36 @@ namespace Tizen.System { add { - if (s_ultraDataSavePackageListChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.UltraDataSavePackageList, s_ultraDataSavePackageListChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_ultraDataSavePackageListChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.UltraDataSavePackageList, s_ultraDataSavePackageListChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_ultraDataSavePackageListChanged += value; } - s_ultraDataSavePackageListChanged += value; } remove { - if (s_ultraDataSavePackageListChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_ultraDataSavePackageListChanged -= value; - if (s_ultraDataSavePackageListChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.UltraDataSavePackageList, s_ultraDataSavePackageListChangedCallback); - if (ret != SystemSettingsError.None) + if (s_ultraDataSavePackageListChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_ultraDataSavePackageListChanged -= value; + if (s_ultraDataSavePackageListChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.UltraDataSavePackageList, s_ultraDataSavePackageListChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2744,31 +2935,37 @@ namespace Tizen.System { add { - if (s_accessibilityTtsChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AccessibilityTtsEnabled, s_accessibilityTtsChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_accessibilityTtsChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AccessibilityTtsEnabled, s_accessibilityTtsChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_accessibilityTtsChanged += value; } - s_accessibilityTtsChanged += value; } remove { - if (s_accessibilityTtsChanged == null) { - Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); - return; - } - s_accessibilityTtsChanged -= value; - if (s_accessibilityTtsChanged == null) - + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AccessibilityTtsEnabled, s_accessibilityTtsChangedCallback); - if (ret != SystemSettingsError.None) + if (s_accessibilityTtsChanged == null) { + Tizen.Log.Info("Tizen.System.SystemSettings","There is no event handler"); + return; + } + s_accessibilityTtsChanged -= value; + if (s_accessibilityTtsChanged == null) + { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AccessibilityTtsEnabled, s_accessibilityTtsChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2796,26 +2993,32 @@ namespace Tizen.System { add { - if (s_vibrationChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.Vibration, s_vibrationChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_vibrationChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.Vibration, s_vibrationChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_vibrationChanged += value; } - s_vibrationChanged += value; } remove { - s_vibrationChanged -= value; - if (s_vibrationChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.Vibration, s_vibrationChangedCallback); - if (ret != SystemSettingsError.None) + s_vibrationChanged -= value; + if (s_vibrationChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.Vibration, s_vibrationChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2843,26 +3046,32 @@ namespace Tizen.System { add { - if (s_automaticTimeUpdateChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AutomaticTimeUpdate, s_automaticTimeUpdateChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_automaticTimeUpdateChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AutomaticTimeUpdate, s_automaticTimeUpdateChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_automaticTimeUpdateChanged += value; } - s_automaticTimeUpdateChanged += value; } remove { - s_automaticTimeUpdateChanged -= value; - if (s_automaticTimeUpdateChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AutomaticTimeUpdate, s_automaticTimeUpdateChangedCallback); - if (ret != SystemSettingsError.None) + s_automaticTimeUpdateChanged -= value; + if (s_automaticTimeUpdateChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AutomaticTimeUpdate, s_automaticTimeUpdateChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2890,26 +3099,32 @@ namespace Tizen.System { add { - if (s_developerOptionStateChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.DeveloperOptionState, s_developerOptionStateChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_developerOptionStateChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.DeveloperOptionState, s_developerOptionStateChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_developerOptionStateChanged += value; } - s_developerOptionStateChanged += value; } remove { - s_developerOptionStateChanged -= value; - if (s_developerOptionStateChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.DeveloperOptionState, s_developerOptionStateChangedCallback); - if (ret != SystemSettingsError.None) + s_developerOptionStateChanged -= value; + if (s_developerOptionStateChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.DeveloperOptionState, s_developerOptionStateChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2938,26 +3153,32 @@ namespace Tizen.System { add { - if (s_accessibilityGrayscaleChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AccessibilityGrayscale, s_accessibilityGrayscaleChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_accessibilityGrayscaleChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AccessibilityGrayscale, s_accessibilityGrayscaleChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_accessibilityGrayscaleChanged += value; } - s_accessibilityGrayscaleChanged += value; } remove { - s_accessibilityGrayscaleChanged -= value; - if (s_accessibilityGrayscaleChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AccessibilityGrayscale, s_accessibilityGrayscaleChangedCallback); - if (ret != SystemSettingsError.None) + s_accessibilityGrayscaleChanged -= value; + if (s_accessibilityGrayscaleChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AccessibilityGrayscale, s_accessibilityGrayscaleChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -2986,26 +3207,32 @@ namespace Tizen.System { add { - if (s_accessibilityNegativeColorChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AccessibilityNegativeColor, s_accessibilityNegativeColorChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_accessibilityNegativeColorChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.AccessibilityNegativeColor, s_accessibilityNegativeColorChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_accessibilityNegativeColorChanged += value; } - s_accessibilityNegativeColorChanged += value; } remove { - s_accessibilityNegativeColorChanged -= value; - if (s_accessibilityNegativeColorChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AccessibilityNegativeColor, s_accessibilityNegativeColorChangedCallback); - if (ret != SystemSettingsError.None) + s_accessibilityNegativeColorChanged -= value; + if (s_accessibilityNegativeColorChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.AccessibilityNegativeColor, s_accessibilityNegativeColorChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } } @@ -3035,26 +3262,32 @@ namespace Tizen.System { add { - if (s_rotaryEventEnabledChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.RotaryEventEnabled, s_rotaryEventEnabledChangedCallback, IntPtr.Zero); - if (ret != SystemSettingsError.None) + if (s_rotaryEventEnabledChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsSetCallback(SystemSettingsKeys.RotaryEventEnabled, s_rotaryEventEnabledChangedCallback, IntPtr.Zero); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } + s_rotaryEventEnabledChanged += value; } - s_rotaryEventEnabledChanged += value; } remove { - s_rotaryEventEnabledChanged -= value; - if (s_rotaryEventEnabledChanged == null) + lock (LockObj) { - SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.RotaryEventEnabled, s_rotaryEventEnabledChangedCallback); - if (ret != SystemSettingsError.None) + s_rotaryEventEnabledChanged -= value; + if (s_rotaryEventEnabledChanged == null) { - throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + SystemSettingsError ret = (SystemSettingsError)Interop.Settings.SystemSettingsRemoveCallback(SystemSettingsKeys.RotaryEventEnabled, s_rotaryEventEnabledChangedCallback); + if (ret != SystemSettingsError.None) + { + throw SystemSettingsExceptionFactory.CreateException(ret, "Error in callback handling"); + } } } }