Example #1
0
        /// <summary>
        ///  Add a setting to the settings Dictionary (creating the dictionary if its missing)
        /// </summary>
        /// <param name="settings"></param>
        /// <param name="key"></param>
        /// <param name="value"></param>
        public static void AddSetting <TObject>(this HandlerSettings settings, string key, TObject value)
        {
            if (settings.Settings == null)
            {
                settings.Settings = new Dictionary <string, string>();
            }

            settings.Settings[key] = value.ToString();
        }
Example #2
0
        /// <summary>
        ///  get a setting from the settings dictionary.
        /// </summary>
        /// <typeparam name="TResult"></typeparam>
        /// <param name="settings"></param>
        /// <param name="key"></param>
        /// <param name="defaultValue"></param>
        /// <returns></returns>
        public static TResult GetSetting <TResult>(this HandlerSettings settings, string key, TResult defaultValue)
        {
            if (settings.Settings != null && settings.Settings.ContainsKey(key))
            {
                var attempt = settings.Settings[key].TryConvertTo <TResult>();
                if (attempt)
                {
                    return(attempt.Result);
                }
            }

            return(defaultValue);
        }
Example #3
0
 /// <summary>
 ///  create a copy of this handlers settings
 /// </summary>
 /// <param name="settings"></param>
 /// <returns></returns>
 public static HandlerSettings Clone(this HandlerSettings settings)
 {
     return(new HandlerSettings
     {
         Actions = settings.Actions,
         Enabled = settings.Enabled,
         FailOnMissingParent = settings.FailOnMissingParent,
         UseFlatStructure = settings.UseFlatStructure,
         Group = settings.Group,
         GuidNames = settings.GuidNames,
         Settings = new Dictionary <string, string>(settings.Settings)
     });
 }