public async Task <Category> AddAsync(Category category) { try { category = await dbRepository.AddAsync(category); busClient.Publish(new CategoryCreated()); return(category); } catch (Exception ex) { logger.LogError(ex.StackTrace); throw new Exception($"Failed to create {nameof(Category)}", ex); } }
public async Task <Tag> AddAsync(Tag Tag) { try { Tag = await dbRepository.AddAsync(Tag); busClient.Publish(new TagCreated()); return(Tag); } catch (Exception ex) { logger.LogError(ex.StackTrace); throw new Exception($"Failed to create {nameof(Tag)}", ex); } }
public Task <Unit> Handle(StopJobDto stopJobDto, CancellationToken cancellationToken) { var jobStoppedMessage = _mapper.Map <JobStoppedMessage>(stopJobDto); _client.Publish(jobStoppedMessage); return(Task.FromResult(new Unit())); }
public void Complete(Job job) { job.InProgress = true; job.Result = _service.Calculate(job.Precision, job.CancellationTokenSource.Token); if (job.CancellationTokenSource.Token.IsCancellationRequested) { job.Result = "-1"; } var jobCompletedMessage = _mapper.Map <JobCompletedMessage>(job); _client.Publish(jobCompletedMessage); }
public async Task <string> Handle(CreateJobDto createJobDto, CancellationToken cancellationToken) { var validator = new CreateJobDtoValidator(); await validator.ValidateAsync(createJobDto); var jobCreatedMessage = _mapper.Map <JobCreatedMessage>(createJobDto); jobCreatedMessage.Id = Guid.NewGuid().ToString(); _client.Publish(jobCreatedMessage); return(jobCreatedMessage.Id); }
/// <summary> /// 发布订阅消息 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="busClient"></param> /// <param name="message"></param> public static void Publish <T>(this IBusClient busClient, T message) where T : class { busClient.Publish(message, null); }