Exemple #1
0
        /// <summary>
        /// <para>Saves the configuration settings created for the application.</para>
        /// </summary>
        /// <param name="serviceProvider">
        /// <para>The a mechanism for retrieving a service object; that is, an object that provides custom support to other objects.</para>
        /// </param>
        public void Save(IServiceProvider serviceProvider)
        {
            ConfigurationContext configurationContext = ServiceHelper.GetCurrentConfigurationContext(serviceProvider);

            if (configurationContext.IsValidSection(DynamicQuerySettings.SectionName))
            {
                DynamicQuerySettingsNode dynamicQuerySettingsNode = null;
                try
                {
                    IUIHierarchy hierarchy = ServiceHelper.GetCurrentHierarchy(serviceProvider);
                    dynamicQuerySettingsNode = hierarchy.FindNodeByType(typeof(DynamicQuerySettingsNode)) as DynamicQuerySettingsNode;
                    if (dynamicQuerySettingsNode == null)
                    {
                        return;
                    }
                    DynamicQuerySettings dynamicQuerySettings = dynamicQuerySettingsNode.DynamicQuerySettings;
                    configurationContext.WriteConfiguration(DynamicQuerySettings.SectionName, dynamicQuerySettings);
                }
                catch (ConfigurationException e)
                {
                    ServiceHelper.LogError(serviceProvider, dynamicQuerySettingsNode, e);
                }
                catch (InvalidOperationException e)
                {
                    ServiceHelper.LogError(serviceProvider, dynamicQuerySettingsNode, e);
                }
            }
        }
Exemple #2
0
 /// <summary>
 /// <para>Initialize a new instance of the <see cref="DynamicQuerySettingsNode"/> class with a <see cref="DynamicQuerySettings"/> object.</para>
 /// </summary>
 /// <param name="databaseSettings">
 /// <para>The <see cref="DatabaseSettings"/> runtime configuration.</para>
 /// </param>
 public DynamicQuerySettingsNode(DynamicQuerySettings dynamicQuerySettings) : base()
 {
     if (dynamicQuerySettings == null)
     {
         throw new ArgumentNullException("DynamicQuerySettings");
     }
     this.dynamicQuerySettings   = dynamicQuerySettings;
     this.instanceRemovedHandler = new ConfigurationNodeChangedEventHandler(OnInstanceNodeRemoved);
     this.instanceRenameHandler  = new ConfigurationNodeChangedEventHandler(OnInstanceNodeRenamed);
 }
Exemple #3
0
        /// <summary>
        /// <para>Adds to the dictionary configuration data for
        /// the enterpriselibrary.configurationSettings configuration section.</para>
        /// </summary>
        /// <param name="serviceProvider">
        /// <para>The a mechanism for retrieving a service object; that is, an object that provides custom support to other objects.</para>
        /// </param>
        /// <param name="configurationDictionary">
        /// <para>A <see cref="ConfigurationDictionary"/> to add
        /// configuration data to.</para></param>
        public void BuildContext(IServiceProvider serviceProvider, ConfigurationDictionary configurationDictionary)
        {
            DynamicQuerySettingsNode node = GetDynamicQuerySettingsNode(serviceProvider);

            if (node != null)
            {
                DynamicQuerySettings settings = node.DynamicQuerySettings;
                configurationDictionary[DynamicQuerySettings.SectionName] = settings;
            }
        }
        /// <summary>
        /// Gets the <see cref="DynamicQueryData"/> from configuration for the named <see cref="DynamicQuery"/>
        /// </summary>
        /// <param name="name">
        /// The name of the <see cref="DynamicQuery"/>.
        /// </param>
        /// <returns>
        /// A <see cref="DynamicQueryData"/> object.
        /// </returns>
        public DynamicQueryData GetDynamicQueryData(string name)
        {
            DynamicQuerySettings settings = this.DynamicQuerySettings;

            if (!settings.DynamicQueryProviders.Contains(name))
            {
                throw new ConfigurationErrorsException(string.Format("Dynamic query providers section '{0}' not defined.", name));
            }
            return(settings.DynamicQueryProviders.Get(name));
        }
Exemple #5
0
        /// <summary>
        /// <para>Opens the configuration settings and registers them with the application.</para>
        /// </summary>
        /// <param name="serviceProvider">
        /// <para>The a mechanism for retrieving a service object; that is, an object that provides custom support to other objects.</para>
        /// </param>
        public void Open(IServiceProvider serviceProvider)
        {
            ConfigurationContext configurationContext = ServiceHelper.GetCurrentConfigurationContext(serviceProvider);

            if (configurationContext.IsValidSection(DynamicQuerySettings.SectionName))
            {
                DynamicQuerySettings     dynamicQuerySettings     = null;
                DynamicQuerySettingsNode dynamicQuerySettingsNode = null;
                try
                {
                    dynamicQuerySettings     = configurationContext.GetConfiguration(DynamicQuerySettings.SectionName) as DynamicQuerySettings;
                    dynamicQuerySettingsNode = new DynamicQuerySettingsNode(dynamicQuerySettings);
                    ConfigurationNode configurationNode = ServiceHelper.GetCurrentRootNode(serviceProvider);
                    configurationNode.Nodes.Add(dynamicQuerySettingsNode);
                }
                catch (ConfigurationException e)
                {
                    ServiceHelper.LogError(serviceProvider, dynamicQuerySettingsNode, e);
                }
            }
        }