public UpdateBreweryPayload UpdateBrewery( UpdateBreweryInput input, [Service] IBreweryValidationConductor validationConductor, [Service] IBreweryConductor breweryConductor, [Service] IMapper mapper, CancellationToken cancellationToken) { var dto = mapper.Map <DTO.Brewery>(input); if (!validationConductor.CanUpdate(dto.Id ?? default, dto, out var errors)) { return(new UpdateBreweryPayload( errors.Select(err => new UserError(err.message, err.key)).ToList(), input.ClientMutationId)); } var brewery = breweryConductor.Update(mapper.Map <Entity.Brewery>(dto)); if (!brewery.HasErrors && !(brewery.ResultObject is null)) { return(new UpdateBreweryPayload(brewery.ResultObject, input.ClientMutationId)); } return(new UpdateBreweryPayload( brewery.Errors.Select(err => new UserError(err.Message, err.Key)).ToList(), input.ClientMutationId)); }
public BreweryResolver( IBreweryConductor breweryConductor, IBreweryFilterConductor filterConductor, IBreweryOrderConductor orderConductor, IBreweryValidationConductor validationConductor) { _breweryConductor = breweryConductor; _filterConductor = filterConductor; _orderConductor = orderConductor; _validationConductor = validationConductor; }
public BreweriesController( IBreweryConductor breweryConductor, IBreweryFilterConductor filterConductor, IBreweryOrderConductor orderConductor, IBreweryValidationConductor validationConductor, IMapper mapper) { _breweryConductor = breweryConductor; _filterConductor = filterConductor; _mapper = mapper; _orderConductor = orderConductor; _validationConductor = validationConductor; }
public async Task <ReviewPayload> CreateReview( ReviewInput input, [Service] BreweryDbContext dbContext, [Service] IBreweryConductor breweryConductor, [Service] ITopicEventSender eventSender, CancellationToken cancellationToken) { if (string.IsNullOrEmpty(input.Subject)) { throw ErrorBuilder.New() .AsGraphQLException(SUBJECT_EMPTY, nameof(SUBJECT_EMPTY)); } if (string.IsNullOrEmpty(input.Body)) { throw ErrorBuilder.New() .AsGraphQLException(BODY_EMPTY, nameof(BODY_EMPTY)); } var review = new Review { Subject = input.Subject, Body = input.Body, BreweryId = input.BreweryId, CreatedOn = DateTimeOffset.Now, }; _ = await dbContext.AddAsync(review); _ = await dbContext.SaveChangesAsync(cancellationToken); var breweryResult = breweryConductor.Find(input.BreweryId); if (breweryResult.HasErrorsOrResultIsNull()) { throw breweryResult.Errors .AsGraphQLException(); } review.Brewery = breweryResult.ResultObject; await eventSender.SendAsync( nameof(ReviewSubscriptions.OnReviewReceived), review, cancellationToken); return(new ReviewPayload(review, input.ClientMutationId)); }
public AutocompleteController(IBreweryConductor breweryConductor, IBreweryFilterConductor filterConductor, IMapper mapper) { _breweryConductor = breweryConductor; _filterConductor = filterConductor; _mapper = mapper; }
public BreweryDataloader(IBreweryConductor breweryConductor) { _breweryConductor = breweryConductor; }
public SearchController(IBreweryConductor breweryConductor, IBreweryFilterConductor filterConductor, IMapper mapper) { _breweryConductor = breweryConductor; _filterConductor = filterConductor; _mapper = mapper; }