コード例 #1
0
        private void Update(string serviceName, string userName, string machineName, string feature, int priority, bool enabled)
        {
            using (var repositories = _repositoryContextFactory.Get())
            {
                var featureToggleRepository = repositories.FeatureToggle;

                var featureToggle = featureToggleRepository.GetAll().FirstOrDefault(e => e.ServiceName == serviceName && e.UserName == userName && e.MachineName == machineName && e.Feature == feature);

                if (featureToggle == null)
                {
                    featureToggle = new Entity.FeatureToggle
                    {
                        ServiceName = serviceName,
                        UserName    = userName,
                        MachineName = machineName,
                        Feature     = feature,
                        Enabled     = enabled,
                        Priority    = priority
                    };

                    _logger.Information("FeatureToggle added {@FeatureToggle}", featureToggle);

                    featureToggleRepository.Add(featureToggle);
                }
                else
                {
                    featureToggle.Enabled  = enabled;
                    featureToggle.Priority = priority;

                    _logger.Information("FeatureToggle updated {@FeatureToggle}", featureToggle);
                }

                repositories.Save();
            }

            _messageBus.Publish(FeatureToggleConfig.FeatureToggleChanged, new FeatureToggleChanged {
                Feature = feature
            });
        }
コード例 #2
0
 public void Add(Entity.FeatureToggle featureToggle)
 {
     _entities.FeatureToggle.Add(featureToggle);
 }