Skip to content

Commit

Permalink
Fix according with revision
Browse files Browse the repository at this point in the history
  • Loading branch information
alexander.fernandez committed Mar 22, 2018
1 parent 3ca6324 commit a13b6cd
Show file tree
Hide file tree
Showing 2 changed files with 82 additions and 78 deletions.
158 changes: 80 additions & 78 deletions src/Catel.Core/Catel.Core.Shared/Configuration/ConfigurationService.cs
Expand Up @@ -93,88 +93,14 @@ public partial class ConfigurationService : IConfigurationService
#endif
}

/// <summary>
/// Sets the roaming config file path.
/// </summary>
/// <param name="filePath">The file path. </param>
public void SetRoamingConfigFilePath(string filePath)
{
Argument.IsNotNullOrEmpty(nameof(filePath), filePath);

_roamingConfigFilePath = filePath;

try
{
if (File.Exists(_roamingConfigFilePath))
{
using (var fileStream = new FileStream(_roamingConfigFilePath, FileMode.Open))
{
_roamingConfiguration = SavableModelBase<DynamicConfiguration>.Load(fileStream, _serializer);
}
}
else
{
_roamingConfiguration?.SaveAsXml(_roamingConfigFilePath);
}
}
catch (Exception ex)
{
Log.Error(ex, "Failed to load roaming configuration, using default settings");

_roamingConfigFilePath = DefaultRoamingConfigFilePath;
}

if (_roamingConfiguration == null)
{
_roamingConfiguration = new DynamicConfiguration();
}
}

/// <summary>
/// Sets the roaming config file path.
/// </summary>
/// <param name="filePath">The file path. </param>
public void SetLocalConfigFilePath(string filePath)
{
Argument.IsNotNullOrEmpty(nameof(filePath), filePath);

_localConfigFilePath = filePath;

try
{
if (File.Exists(_localConfigFilePath))
{
using (var fileStream = new FileStream(_localConfigFilePath, FileMode.Open))
{
_localConfiguration = SavableModelBase<DynamicConfiguration>.Load(fileStream, _serializer);
}
}
else
{
_localConfiguration?.SaveAsXml(_localConfigFilePath);
}
}
catch (Exception ex)
{
Log.Error(ex, "Failed to load local configuration, using default settings");

_localConfigFilePath = DefaultLocalConfigFilePath;
}

if (_localConfiguration == null)
{
_localConfiguration = new DynamicConfiguration();
}
}

#region Events
#region Events
/// <summary>
/// Occurs when the configuration has changed.
/// </summary>
public event EventHandler<ConfigurationChangedEventArgs> ConfigurationChanged;
#endregion
#endregion

#region Methods
#region Methods
/// <summary>
/// Suspends the notifications of this service until the returned object is disposed.
/// </summary>
Expand Down Expand Up @@ -299,6 +225,82 @@ public void InitializeValue(ConfigurationContainer container, string key, object
}
}

#if NET || NETSTANDARD
/// <summary>
/// Sets the roaming config file path.
/// </summary>
/// <param name="filePath">The file path. </param>
public void SetRoamingConfigFilePath(string filePath)
{
Argument.IsNotNullOrEmpty(nameof(filePath), filePath);

_roamingConfigFilePath = filePath;

try
{
if (File.Exists(_roamingConfigFilePath))
{
using (var fileStream = new FileStream(_roamingConfigFilePath, FileMode.Open))
{
_roamingConfiguration = SavableModelBase<DynamicConfiguration>.Load(fileStream, _serializer);
}
}
else
{
_roamingConfiguration?.SaveAsXml(_roamingConfigFilePath);
}
}
catch (Exception ex)
{
Log.Error(ex, "Failed to load roaming configuration, using default settings");

_roamingConfigFilePath = DefaultRoamingConfigFilePath;
}

if (_roamingConfiguration == null)
{
_roamingConfiguration = new DynamicConfiguration();
}
}

/// <summary>
/// Sets the roaming config file path.
/// </summary>
/// <param name="filePath">The file path. </param>
public void SetLocalConfigFilePath(string filePath)
{
Argument.IsNotNullOrEmpty(nameof(filePath), filePath);

_localConfigFilePath = filePath;

try
{
if (File.Exists(_localConfigFilePath))
{
using (var fileStream = new FileStream(_localConfigFilePath, FileMode.Open))
{
_localConfiguration = SavableModelBase<DynamicConfiguration>.Load(fileStream, _serializer);
}
}
else
{
_localConfiguration?.SaveAsXml(_localConfigFilePath);
}
}
catch (Exception ex)
{
Log.Error(ex, "Failed to load local configuration, using default settings");

_localConfigFilePath = DefaultLocalConfigFilePath;
}

if (_localConfiguration == null)
{
_localConfiguration = new DynamicConfiguration();
}
}
#endif

/// <summary>
/// Determines whether the specified key value exists in the configuration.
/// </summary>
Expand Down Expand Up @@ -410,6 +412,6 @@ private void RaiseConfigurationChanged(ConfigurationContainer container, string

ConfigurationChanged.SafeInvoke(this, () => new ConfigurationChangedEventArgs(container, key, value));
}
#endregion
#endregion
}
}
Expand Up @@ -64,6 +64,7 @@ public interface IConfigurationService
/// <exception cref="ArgumentException">The <paramref name="key" /> is <c>null</c> or whitespace.</exception>
void InitializeValue(ConfigurationContainer container, string key, object defaultValue);

#if NET || NETSTANDARD
/// <summary>
/// Sets the roaming config file path.
/// </summary>
Expand All @@ -75,5 +76,6 @@ public interface IConfigurationService
/// </summary>
/// <param name="filePath">The file path. </param>
void SetLocalConfigFilePath(string filePath);
#endif
}
}

0 comments on commit a13b6cd

Please sign in to comment.