Removed UWP SettingsServiceImplementation
This commit is contained in:
		
							parent
							
								
									a627d1f9e2
								
							
						
					
					
						commit
						8a32e3fe10
					
				| @ -1,99 +0,0 @@ | ||||
| using eShopOnContainers.Core.Services.Settings; | ||||
| using eShopOnContainers.Windows.Services; | ||||
| using Windows.Storage; | ||||
| 
 | ||||
| [assembly: Xamarin.Forms.Dependency(typeof(SettingsServiceImplementation))] | ||||
| namespace eShopOnContainers.Windows.Services | ||||
| { | ||||
|     public class SettingsServiceImplementation : ISettingsServiceImplementation | ||||
|     { | ||||
|         #region Internal Implementation | ||||
| 
 | ||||
|         readonly object _locker = new object(); | ||||
| 
 | ||||
|         ApplicationDataContainer GetAppSettings() | ||||
|         { | ||||
|             return ApplicationData.Current.LocalSettings; | ||||
|         } | ||||
| 
 | ||||
|         bool AddOrUpdateValueInternal<T>(string key, T value) | ||||
|         { | ||||
|             bool valueChanged = false; | ||||
| 
 | ||||
|             if (value == null) | ||||
|             { | ||||
|                 Remove(key); | ||||
|                 return true; | ||||
|             } | ||||
| 
 | ||||
|             lock (_locker) | ||||
|             { | ||||
|                 var settings = GetAppSettings(); | ||||
|                 if (settings.Values.ContainsKey(key)) | ||||
|                 { | ||||
|                     if (settings.Values[key] != (object)value) | ||||
|                     { | ||||
|                         settings.Values[key] = value; | ||||
|                         valueChanged = true; | ||||
|                     } | ||||
|                 } | ||||
|                 else | ||||
|                 { | ||||
|                     settings.Values[key] = value; | ||||
|                     valueChanged = true; | ||||
|                 } | ||||
|             } | ||||
| 
 | ||||
|             return valueChanged; | ||||
|         } | ||||
| 
 | ||||
|         T GetValueOrDefaultInternal<T>(string key, T defaultValue = default(T)) | ||||
|         { | ||||
|             object value; | ||||
| 
 | ||||
|             lock (_locker) | ||||
|             { | ||||
|                 var settings = GetAppSettings(); | ||||
|                 if (settings.Values.ContainsKey(key)) | ||||
|                 { | ||||
|                     var tempValue = settings.Values[key]; | ||||
|                     if (tempValue != null) | ||||
|                         value = (T)tempValue; | ||||
|                     else | ||||
|                         value = defaultValue; | ||||
|                 } | ||||
|                 else | ||||
|                 { | ||||
|                     value = defaultValue; | ||||
|                 } | ||||
|             } | ||||
|             return null != value ? (T)value : defaultValue; | ||||
|         } | ||||
| 
 | ||||
|         #endregion | ||||
| 
 | ||||
|         #region ISettingsServiceImplementation | ||||
| 
 | ||||
|         public bool AddOrUpdateValue(string key, bool value) => AddOrUpdateValueInternal(key, value); | ||||
| 
 | ||||
|         public bool AddOrUpdateValue(string key, string value) => AddOrUpdateValueInternal(key, value); | ||||
| 
 | ||||
|         public bool GetValueOrDefault(string key, bool defaultValue) => GetValueOrDefaultInternal(key, defaultValue); | ||||
| 
 | ||||
|         public string GetValueOrDefault(string key, string defaultValue) => GetValueOrDefaultInternal(key, defaultValue); | ||||
| 
 | ||||
|         public void Remove(string key) | ||||
|         { | ||||
|             lock (_locker) | ||||
|             { | ||||
|                 var settings = GetAppSettings(); | ||||
|                 if (settings.Values.ContainsKey(key)) | ||||
|                 { | ||||
|                     settings.Values.Remove(key); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         #endregion | ||||
|     } | ||||
| } | ||||
| @ -123,7 +123,6 @@ | ||||
|     <Compile Include="Renderers\CustomTabbedPageRenderer.cs" /> | ||||
|     <Compile Include="Renderers\SlideDownMenuPageRenderer.cs" /> | ||||
|     <Compile Include="Services\LocationServiceImplementation.cs" /> | ||||
|     <Compile Include="Services\SettingsServiceImplementation.cs" /> | ||||
|   </ItemGroup> | ||||
|   <ItemGroup> | ||||
|     <AppxManifest Include="Package.appxmanifest"> | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user