/// <summary>
        /// determines if the settings collection already contains this setting type
        /// </summary>
        public bool Contains <TSetting>(TSetting item)
            where TSetting : ISetting
        {
            var itemType = item.GetType();

            return(!item.IsMultipleAllowed() && SettingsList.Any(s => s.GetType().IsAssignableFrom(itemType)));
        }
示例#2
0
    /// <summary>
    /// Checks all setting keys, if are enabled in actual scope.
    /// If no settings are specified, true is returned.
    /// </summary>
    /// <returns>If no settings are specified, true is returned, otherwise all settings have to be true in actual scope.</returns>
    private bool IsModuleEnabledBySettingKeys()
    {
        if (AtLeastOne)
        {
            return(SettingsList.Any(key => IsSettingEnabledInActualScope(key)));
        }

        return(!SettingsList.Exists(key => !IsSettingEnabledInActualScope(key)));
    }
示例#3
0
        /// <summary>
        /// determines if the settings collection already contains this setting type
        /// </summary>
        public bool Contains <TSetting>(TSetting item)
            where TSetting : ISetting
        {
            var itemType = item.GetType();

            var settingData = Validate.GetSettingData(item);

            if (settingData != null && settingData.MultipleAllowed)
            {
                return(false);
            }

            return(SettingsList.Any(s => s.GetType().IsAssignableFrom(itemType)));
        }
示例#4
0
 /// <summary>
 /// determines if the settings collection already contains this setting type
 /// </summary>
 public bool Contains <TSetting>()
     where TSetting : ISetting
 {
     return(SettingsList.Any(s => s is TSetting));
 }