コード例 #1
0
 public void AddSpecification(IToggleSpecification specification)
 {
     if (specification == null)
     {
         throw new ArgumentNullException(nameof(specification));
     }
     _specificationData.Add(specification, new Dictionary <string, string>(StringComparer.OrdinalIgnoreCase));
 }
コード例 #2
0
		public FileProvider(IFileReader fileReader)
		{
			_fileReader = fileReader;
			var defaultSpecifications = new IToggleSpecification[]
			{
				new TrueSpecification(), new FalseSpecification()
			};
			_specifications = defaultSpecifications.ToDictionary(x => x.Name, StringComparer.OrdinalIgnoreCase);
		}
コード例 #3
0
		public IToggleChecker Create()
		{
			if (_userProvider == null)
				_userProvider = new NullUserProvider();
			if(_defaultToggleSpecification==null)
				_defaultToggleSpecification = new FalseSpecification();

			var featureProvider = _featureProviderFactory.Create();
			return new ToggleChecker(featureProvider, _defaultToggleSpecification, _userProvider);
		}
コード例 #4
0
        public IToggleChecker Create()
        {
            if (_userProvider == null)
            {
                _userProvider = new NullUserProvider();
            }
            if (_defaultToggleSpecification == null)
            {
                _defaultToggleSpecification = new BoolSpecification(false);
            }

            var featureProviders = _featureProviderFactories.Select(factory => factory.Create()).ToArray();

            return(new ToggleChecker(featureProviders, _defaultToggleSpecification, _userProvider));
        }
コード例 #5
0
        public IToggleChecker Create()
        {
            if (_userProvider == null)
            {
                _userProvider = new NullUserProvider();
            }
            if (_defaultToggleSpecification == null)
            {
                _defaultToggleSpecification = new FalseSpecification();
            }

            var featureProvider = _featureProviderFactory.Create();

            return(new ToggleChecker(featureProvider, _defaultToggleSpecification, _userProvider));
        }
コード例 #6
0
 public Feature(IToggleSpecification specification)
 {
     _specificationData = new Dictionary <IToggleSpecification, IDictionary <string, string> >();
     AddSpecification(specification);
 }
コード例 #7
0
ファイル: ToggleChecker.cs プロジェクト: lanicon/Toggle.Net
 internal ToggleChecker(IEnumerable <IFeatureProvider> featureProviders, IToggleSpecification defaultToggleSpecification, IUserProvider userProvider)
 {
     _featureProviders           = featureProviders;
     _defaultToggleSpecification = defaultToggleSpecification;
     _userProvider = userProvider;
 }
コード例 #8
0
 public void AddMapping(string specificationName, IToggleSpecification specification)
 {
     _mappings.Add(specificationName, specification);
 }
コード例 #9
0
ファイル: Feature.cs プロジェクト: robink-teleopti/Toggle.Net
		public void AddSpecification(IToggleSpecification specification)
		{
			if(specification==null)
				throw new ArgumentNullException("specification");
			_specifications.Add(specification);
		}
コード例 #10
0
ファイル: Feature.cs プロジェクト: robink-teleopti/Toggle.Net
		public Feature(string flagName, IToggleSpecification specification)
		{
			FlagName = flagName;
			_specifications = new List<IToggleSpecification>();
			AddSpecification(specification);
		}
コード例 #11
0
 public ToggleConfiguration SetDefaultSpecification(IToggleSpecification toggleSpecification)
 {
     _defaultToggleSpecification = toggleSpecification;
     return(this);
 }
コード例 #12
0
 public void AddParameter(IToggleSpecification specification, string parameterName, string parameterValue)
 {
     _specificationData[specification].Add(parameterName, parameterValue);
 }
コード例 #13
0
ファイル: ToggleChecker.cs プロジェクト: Teleopti/Toggle.Net
		internal ToggleChecker(IFeatureProvider featureProvider, IToggleSpecification defaulToggleSpecification, IUserProvider userProvider)
		{
			_featureProvider = featureProvider;
			_defaulToggleSpecification = defaulToggleSpecification;
			_userProvider = userProvider;
		}
コード例 #14
0
		public void AddMapping(string specificationName, IToggleSpecification specification)
		{
			_mappings.Add(specificationName, specification);
		}
コード例 #15
0
ファイル: Feature.cs プロジェクト: Teleopti/Toggle.Net
		public void AddParameter(IToggleSpecification specification, string parameterName, string parameterValue)
		{
			_specificationData[specification].Add(parameterName, parameterValue);
		}
コード例 #16
0
ファイル: Feature.cs プロジェクト: Teleopti/Toggle.Net
		public void AddSpecification(IToggleSpecification specification)
		{
			if(specification==null)
				throw new ArgumentNullException(nameof(specification));
			_specificationData.Add(specification, new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase));
		}
コード例 #17
0
ファイル: Feature.cs プロジェクト: Teleopti/Toggle.Net
		public Feature(IToggleSpecification specification)
		{
			_specificationData = new Dictionary<IToggleSpecification, IDictionary<string, string>>();
			AddSpecification(specification);
		}
コード例 #18
0
 internal ToggleChecker(IFeatureProvider featureProvider, IToggleSpecification defaultToggleSpecification, IUserProvider userProvider)
 {
     _featureProvider            = featureProvider;
     _defaultToggleSpecification = defaultToggleSpecification;
     _userProvider = userProvider;
 }
コード例 #19
0
		public ToggleConfiguration SetDefaultSpecification(IToggleSpecification toggleSpecification)
		{
			_defaultToggleSpecification = toggleSpecification;
			return this;
		}