/// <summary> /// Creates a new instance of <see cref="DesignConfigurationSource"/> based on <paramref name="rootSource"/> and <paramref name="filePath"/>. /// </summary> /// <param name="rootSource">The source that was used to open the main conifguration file.</param> /// <param name="filePath">An absolute of relative path to the file to which the source should be created.</param> /// <returns>A new instance of <see cref="DesignConfigurationSource"/>.</returns> public static IDesignConfigurationSource CreateDesignSource(IDesignConfigurationSource rootSource, string filePath) { if (string.IsNullOrEmpty(filePath)) { throw new ArgumentException(Resources.ExceptionStringNullOrEmpty); } DesignConfigurationSource rootSourceAsDesignSource = rootSource as DesignConfigurationSource; if (rootSourceAsDesignSource == null) { throw new ArgumentException(Resources.CannotCreateDesignSource, "rootSource"); } { string mainConfigurationFileDirectory = Path.GetDirectoryName(rootSourceAsDesignSource.ConfigurationFilePath); string fullFilePath = Path.Combine(mainConfigurationFileDirectory, filePath); if (!File.Exists(fullFilePath)) { File.WriteAllText(fullFilePath, @"<configuration />"); } return(new DesignConfigurationSource(fullFilePath)); } }
private static IDesignConfigurationSource GetSectionSource(IDesignConfigurationSource mainConfigurationSource) { var configSourceSection = mainConfigurationSource.GetLocalSection(ConfigurationSourceSection.SectionName) as ConfigurationSourceSection; return(GetSelectedConfigSource(configSourceSection, mainConfigurationSource)); }
private void SaveSections(IEnumerable <SectionViewModel> sectionsToSave, IDesignConfigurationSource source) { ClearConfigurationSections(source); foreach (var section in sectionsToSave) { section.Save(source); } }
private void ClearConfigurationSections(IDesignConfigurationSource source) { var locator = builder.Resolve <ConfigurationSectionLocator>(); foreach (var sectionName in locator.ClearableConfigurationSectionNames) { source.RemoveLocalSection(sectionName); } }
private void SaveConfigurationSource(IDesignConfigurationSource configurationSource) { var configurationSourceSectionModel = Sections .Where(s => typeof(ConfigurationSourceSection).IsAssignableFrom(s.ConfigurationType)) .OfType <ConfigurationSourceSectionViewModel>() .Cast <ConfigurationSourceSectionViewModel>() .First(); ClearConfigurationSections(configurationSource); configurationSourceSectionModel.Save(configurationSource); }
private IDesignConfigurationSource GetSectionSourceFromModel(IDesignConfigurationSource mainConfigurationSource) { var configurationSourceSection = Sections .Where(s => typeof(ConfigurationSourceSection).IsAssignableFrom(s.ConfigurationType)) .OfType <ConfigurationSourceSectionViewModel>() .Select(m => m.ConfigurationElement) .Cast <ConfigurationSourceSection>() .FirstOrDefault(); return(GetSelectedConfigSource(configurationSourceSection, mainConfigurationSource)); }
public override void Save(IDesignConfigurationSource configurationSource) { base.Save(configurationSource); foreach (ProtectedKeySettings keySettings in DescendentElements(). SelectMany(x => x.Properties). Where(x => typeof(ProtectedKeySettings) == x.PropertyType). Select(x => x.Value)) { SaveProtectedKey(keySettings); } }
public bool Load(IDesignConfigurationSource configSource) { Clear(); Initialize(); IDesignConfigurationSource sectionConfigurationSource = null; try { sectionConfigurationSource = GetSectionSource(configSource); } catch (Exception ex) { ConfigurationLogWriter.LogException(ex); uiService.ShowMessageWpf(string.Format(CultureInfo.CurrentCulture, Resources.ErrorLoadingConfigSourceFile, ex.Message), Resources.ErrorTitle, MessageBoxButton.OK); return(false); } if (sectionConfigurationSource != null) { try { AddSection(ConfigurationSourceSection.SectionName, configSource.GetLocalSection(ConfigurationSourceSection.SectionName), new InitializeContext(configSource)); LoadSectionsFromSource(sectionConfigurationSource); } catch { var disposable = sectionConfigurationSource as IDisposable; if (disposable != null) { disposable.Dispose(); } throw; } } else { LoadSectionsFromSource(configSource); } Validate(); return(true); }
public override void Save(IDesignConfigurationSource configurationSource) { ProtectionProviderProperty.TypedValue = dataSettingsViewModel.ProtectionProviderProperty.TypedValue; oracleSettingsViewModel.ProtectionProviderProperty.TypedValue = dataSettingsViewModel.ProtectionProviderProperty.TypedValue; RequirePermissionProperty.TypedValue = dataSettingsViewModel.RequirePermissionProperty.TypedValue; oracleSettingsViewModel.RequirePermissionProperty.TypedValue = dataSettingsViewModel.RequirePermissionProperty.TypedValue; base.Save(configurationSource); if (!OracleSettingsAreEmpty((OracleConnectionSettings)oracleSettingsViewModel.ConfigurationElement)) { oracleSettingsViewModel.Save(configurationSource); } if (!DaabSettingsAreEmpty((DatabaseSettings)dataSettingsViewModel.ConfigurationElement)) { dataSettingsViewModel.Save(configurationSource); } }
public virtual void Save(IDesignConfigurationSource configurationSource) { Guard.ArgumentNotNull(configurationSource, "configurationSource"); ConfigurationSectionCloner cloner = new ConfigurationSectionCloner(); var savableSection = cloner.Clone((ConfigurationSection)ConfigurationElement); BeforeSave(savableSection); configurationSource.RemoveLocalSection(configurationSectionName); if (protectionProviderProperty.NeedsProtectionProvider) { configurationSource.Add(configurationSectionName, savableSection, protectionProviderProperty.TypedValue); } else { configurationSource.AddLocalSection(configurationSectionName, savableSection); } }
private void LoadSectionsFromSource(IDesignConfigurationSource sectionConfigurationSource) { var locator = builder.Resolve <ConfigurationSectionLocator>(); foreach (var sectionName in locator.ConfigurationSectionNames) { try { var section = sectionConfigurationSource.GetLocalSection(sectionName); if (section != null) { AddSection(sectionName, section, new InitializeContext(sectionConfigurationSource)); } } catch (Exception e) { uiService.ShowError(e, string.Format(CultureInfo.CurrentCulture, Resources.ErrorCouldNotLoadSection, sectionName)); } } }
/// <summary> /// Creates a new instance of <see cref="DesignConfigurationSource"/> based on <paramref name="rootSource"/> and <paramref name="filePath"/>. /// </summary> /// <param name="rootSource">The source that was used to open the main conifguration file.</param> /// <param name="filePath">An absolute of relative path to the file to which the source should be created.</param> /// <returns>A new instance of <see cref="DesignConfigurationSource"/>.</returns> public static IDesignConfigurationSource CreateDesignSource(IDesignConfigurationSource rootSource, string filePath) { if (string.IsNullOrEmpty(filePath)) throw new ArgumentException(Resources.ExceptionStringNullOrEmpty); DesignConfigurationSource rootSourceAsDesignSource = rootSource as DesignConfigurationSource; if (rootSourceAsDesignSource == null) throw new ArgumentException(Resources.CannotCreateDesignSource, "rootSource"); { string mainConfigurationFileDirectory = Path.GetDirectoryName(rootSourceAsDesignSource.ConfigurationFilePath); string fullFilePath = Path.Combine(mainConfigurationFileDirectory, filePath); if (!File.Exists(fullFilePath)) { File.WriteAllText(fullFilePath, @"<configuration />"); } return new DesignConfigurationSource(fullFilePath); } }
///<summary> /// Returns a new <see cref="IDesignConfigurationSource"/> configured based on this configuration element. ///</summary> ///<returns>Returns a new <see cref="IDesignConfigurationSource"/> or null if this source does not have design-time support.</returns> public override IDesignConfigurationSource CreateDesignSource(IDesignConfigurationSource rootSource) { return DesignConfigurationSource.CreateDesignSource(rootSource, FilePath); }
private static IDesignConfigurationSource GetSelectedConfigSource(ConfigurationSourceSection configSourceSection, IDesignConfigurationSource mainConfigurationSource) { if (configSourceSection == null) { return(null); } var selectedSource = configSourceSection.Sources.Where(s => s.Name == configSourceSection.SelectedSource). FirstOrDefault(); return(selectedSource == null ? null : selectedSource.CreateDesignSource(mainConfigurationSource)); }
public bool Save(IDesignConfigurationSource configurationSource) { saveOperation.BeginPerformSaveOperation(); try { var sectionsToSave = Sections.Where(x => null == x as EnvironmentSourceViewModel); var sectionSaveSource = GetSectionSourceFromModel(configurationSource); if (sectionSaveSource != null) { try { try { SaveConfigurationSource(configurationSource); } catch (Exception e) { ConfigurationLogWriter.LogException(e); uiService.ShowError(e, Resources.ErrorSavingConfigurationSourceOnMainFile); return(false); } try { SaveSections( sectionsToSave.Where( x => !typeof(ConfigurationSourceSection).IsAssignableFrom(x.ConfigurationType)), sectionSaveSource); } catch (Exception e) { ConfigurationLogWriter.LogException(e); uiService.ShowError(e, Resources.ErrorSavingConfigurationSectionsOnSelectedSource); return(false); } return(true); } finally { var disposable = sectionSaveSource as IDisposable; if (disposable != null) { disposable.Dispose(); } } } try { SaveSections(sectionsToSave, configurationSource); } catch (Exception e) { ConfigurationLogWriter.LogException(e); uiService.ShowError(e, Resources.ErrorSavingConfigurationSectionsOnMainFile); return(false); } } finally { saveOperation.EndPerformSaveOperation(); } return(true); }
public bool Load(IDesignConfigurationSource configSource) { Clear(); Initialize(); IDesignConfigurationSource sectionConfigurationSource = null; try { sectionConfigurationSource = GetSectionSource(configSource); } catch (Exception ex) { ConfigurationLogWriter.LogException(ex); uiService.ShowMessageWpf(string.Format(CultureInfo.CurrentCulture, Resources.ErrorLoadingConfigSourceFile, ex.Message), Resources.ErrorTitle, MessageBoxButton.OK); return false; } if (sectionConfigurationSource != null) { try { AddSection(ConfigurationSourceSection.SectionName, configSource.GetLocalSection(ConfigurationSourceSection.SectionName), new InitializeContext(configSource)); LoadSectionsFromSource(sectionConfigurationSource); } catch { var disposable = sectionConfigurationSource as IDisposable; if (disposable != null) { disposable.Dispose(); } throw; } } else { LoadSectionsFromSource(configSource); } Validate(); return true; }
private void SaveSections(IEnumerable<SectionViewModel> sectionsToSave, IDesignConfigurationSource source) { ClearConfigurationSections(source); foreach (var section in sectionsToSave) { section.Save(source); } }
private void ClearConfigurationSections(IDesignConfigurationSource source) { var locator = builder.Resolve<ConfigurationSectionLocator>(); foreach (var sectionName in locator.ClearableConfigurationSectionNames) { source.RemoveLocalSection(sectionName); } }
private void SaveConfigurationSource(IDesignConfigurationSource configurationSource) { var configurationSourceSectionModel = Sections .Where(s => typeof(ConfigurationSourceSection).IsAssignableFrom(s.ConfigurationType)) .OfType<ConfigurationSourceSectionViewModel>() .Cast<ConfigurationSourceSectionViewModel>() .First(); ClearConfigurationSections(configurationSource); configurationSourceSectionModel.Save(configurationSource); }
public bool Save(IDesignConfigurationSource configurationSource) { saveOperation.BeginPerformSaveOperation(); try { var sectionsToSave = Sections.Where(x => null == x as EnvironmentSourceViewModel); var sectionSaveSource = GetSectionSourceFromModel(configurationSource); if (sectionSaveSource != null) { try { try { SaveConfigurationSource(configurationSource); } catch (Exception e) { ConfigurationLogWriter.LogException(e); uiService.ShowError(e, Resources.ErrorSavingConfigurationSourceOnMainFile); return false; } try { SaveSections( sectionsToSave.Where( x => !typeof(ConfigurationSourceSection).IsAssignableFrom(x.ConfigurationType)), sectionSaveSource); } catch (Exception e) { ConfigurationLogWriter.LogException(e); uiService.ShowError(e, Resources.ErrorSavingConfigurationSectionsOnSelectedSource); return false; } return true; } finally { var disposable = sectionSaveSource as IDisposable; if (disposable != null) disposable.Dispose(); } } try { SaveSections(sectionsToSave, configurationSource); } catch (Exception e) { ConfigurationLogWriter.LogException(e); uiService.ShowError(e, Resources.ErrorSavingConfigurationSectionsOnMainFile); return false; } } finally { saveOperation.EndPerformSaveOperation(); } return true; }
private static IDesignConfigurationSource GetSelectedConfigSource(ConfigurationSourceSection configSourceSection, IDesignConfigurationSource mainConfigurationSource) { if (configSourceSection == null) return null; var selectedSource = configSourceSection.Sources.Where(s => s.Name == configSourceSection.SelectedSource). FirstOrDefault(); return (selectedSource == null ? null : selectedSource.CreateDesignSource(mainConfigurationSource)); }
/// <summary> /// Returns a new <see cref="IDesignConfigurationSource"/> configured based on this configuration element. /// </summary> /// <param name="rootSource">The object that is used by Enterprise Library at design time and provides the ability to retrieve, add, and remove sections.</param> /// <returns>Returns a new <see cref="IDesignConfigurationSource"/> or null if this source does not have design-time support.</returns> public override IDesignConfigurationSource CreateDesignSource(IDesignConfigurationSource rootSource) { return(null); }
protected override void Act() { desingConfigurationSource = configurationSourceElement.CreateDesignSource(mainConfigurationSource); }
///<summary> /// Returns a new <see cref="IDesignConfigurationSource"/> configured based on this configuration element. ///</summary> ///<returns>Returns a new <see cref="IDesignConfigurationSource"/> or null if this source does not have design-time support.</returns> public override IDesignConfigurationSource CreateDesignSource(IDesignConfigurationSource rootSource) { return(DesignConfigurationSource.CreateDesignSource(rootSource, FilePath)); }
///<summary> /// Initializes a enw instance of <see cref="InitializeContext"/> /// with the <see cref="IDesignConfigurationSource"/> source specified. ///</summary> ///<param name="loadSource"></param> public InitializeContext(IDesignConfigurationSource loadSource) { this.loadSource = loadSource; }
///<summary> /// Returns a new <see cref="IDesignConfigurationSource"/> configured based on this configuration element. ///</summary> ///<returns>Returns a new <see cref="IDesignConfigurationSource"/> or null if this source does not have design-time support.</returns> public virtual IDesignConfigurationSource CreateDesignSource(IDesignConfigurationSource rootSource) { return(null); }
private void LoadSectionsFromSource(IDesignConfigurationSource sectionConfigurationSource) { var locator = builder.Resolve<ConfigurationSectionLocator>(); foreach (var sectionName in locator.ConfigurationSectionNames) { try { var section = sectionConfigurationSource.GetLocalSection(sectionName); if (section != null) { AddSection(sectionName, section, new InitializeContext(sectionConfigurationSource)); } } catch (Exception e) { uiService.ShowError(e, string.Format(CultureInfo.CurrentCulture, Resources.ErrorCouldNotLoadSection, sectionName)); } } }
///<summary> /// Returns a new <see cref="IDesignConfigurationSource"/> configured based on this configuration element. ///</summary> ///<returns>Returns a new <see cref="IDesignConfigurationSource"/> or null if this source does not have design-time support.</returns> public virtual IDesignConfigurationSource CreateDesignSource(IDesignConfigurationSource rootSource) { return null; }
private static IDesignConfigurationSource GetSectionSource(IDesignConfigurationSource mainConfigurationSource) { var configSourceSection = mainConfigurationSource.GetLocalSection(ConfigurationSourceSection.SectionName) as ConfigurationSourceSection; return GetSelectedConfigSource(configSourceSection, mainConfigurationSource); }
private IDesignConfigurationSource GetSectionSourceFromModel(IDesignConfigurationSource mainConfigurationSource) { var configurationSourceSection = Sections .Where(s => typeof(ConfigurationSourceSection).IsAssignableFrom(s.ConfigurationType)) .OfType<ConfigurationSourceSectionViewModel>() .Select(m => m.ConfigurationElement) .Cast<ConfigurationSourceSection>() .FirstOrDefault(); return GetSelectedConfigSource(configurationSourceSection, mainConfigurationSource); }