Exemple #1
0
        public HierarchicalXmlSettingProvider(ISettingFileBuilder fileNameBuilder)
        {
            if (fileNameBuilder == null)
            {
                throw new SettingException(
                          string.Format(Lang.ExceptionMessage.NullParameter, "fileNameBuilder"), new
                          ArgumentNullException("fileNameBuilder")
                          );
            }

            this.FileNameBuilder = fileNameBuilder;
            // default paths
            fileSettingPaths = new List <string>();
        }
        /// <summary>
        /// Instantiate an object for the setting factory
        /// </summary>
        /// <param name="applicationName">Name of application</param>
        /// <param name="xmlPathBuilder">Path builder object which is used to generate (build) the path of xml files</param>
        /// <param name="cacheStrategy">Cache-strategy object to cache setting object</param>
        /// <param name="settingProvider">Setting provider object which is responsible for get setting value from various sources</param>
        public XmlSettingFactory(string applicationName, ISettingFileBuilder xmlPathBuilder, ISettingCacheStrategy cacheStrategy, ISettingProvider settingProvider)
        {
            if (string.IsNullOrEmpty(applicationName))
            {
                throw new SettingException(
                          string.Format(Lang.ExceptionMessage.NullParameter, "applicationName"),
                          new ArgumentNullException("applicationName")
                          );
            }

            ApplicationName = applicationName;

            XmlPathBuilder = xmlPathBuilder ?? throw new SettingException(
                                       string.Format(Lang.ExceptionMessage.NullParameter, "xmlPathBuilder"),
                                       new ArgumentNullException("xmlPathBuilder")
                                       );

            SettingProvider = settingProvider ?? CreateDefaultSettingProvider();
            CacheStrategy   = cacheStrategy ?? CreateDefaultCacheStrategy();
        }
 /// <summary>
 /// Instantiate an object for the setting factory
 /// </summary>
 /// <param name="applicationName">Name of application</param>
 /// <param name="xmlPathBuilder">Path builder object which is used to generate (build) the path of xml files</param>
 /// <param name="settingProvider">Setting provider object which is responsible for get setting value from various sources</param>
 public XmlSettingFactory(string applicationName, ISettingFileBuilder xmlPathBuilder, ISettingProvider settingProvider)
     : this(applicationName, xmlPathBuilder, null, settingProvider)
 {
 }
 /// <summary>
 /// Instantiate an object for the setting factory
 /// </summary>
 /// <param name="applicationName">Name of application</param>
 /// <param name="xmlPathBuilder">Path builder object which is used to generate (build) the path of xml files</param>
 /// <param name="cacheStrategy">Cache-strategy object to cache setting object</param>
 public XmlSettingFactory(string applicationName, ISettingFileBuilder xmlPathBuilder, ISettingCacheStrategy cacheStrategy)
     : this(applicationName, xmlPathBuilder, cacheStrategy, null)
 {
 }