コード例 #1
0
        public async Task PublishAsync_SendsPublishCommandWithGivenEvent(string key, string value)
        {
            var now = DateTime.Now;
            var configurationChangedEvent = new ConfigurationChangedEvent(key, value, now);
            await _publisher.PublishAsync(configurationChangedEvent);

            _fixture.MockConnectionMultiplexer.Verify(x => x.GetSubscriber(It.IsAny <object>()), Times.Once);
            _fixture.MockSubscriber.Verify(x => x.PublishAsync(ConfigurationChangedEvent.EventName, JsonConvert.SerializeObject(configurationChangedEvent), It.IsAny <CommandFlags>()), Times.Once);
        }
コード例 #2
0
        public async Task <IActionResult> Update([FromBody] ConfigurationUpdateModel model)
        {
            if (!ModelState.IsValid)
            {
                _logger.LogDebug($"{nameof(ModelState)} is not valid.", ModelState);
                return(BadRequest(ModelState));
            }

            var configuration = _mapper.Map <Configuration>(model);
            await _configurationRepository.UpdateAsync(configuration);

            var configurationChangedEvent = new ConfigurationChangedEvent(model.Key, model.Value, DateTime.Now);
            await _eventPublisher.PublishAsync(configurationChangedEvent);

            return(Ok());
        }
コード例 #3
0
 private void NewConfiguration(ConfigurationChangedEvent obj)
 {
     Log.Info("Sending New Configuration to Deloyment Service");
     _deploymentServices.PushNewConfigString(obj.NewConfig);
 }