public AddToStockCommandHandler(IStockActionUniqueChecker stockActionUniqueChecker, IStockDbContext stockDbContext) { _stockActionUniqueChecker = stockActionUniqueChecker; _stockDbContext = stockDbContext; }
public static StockAction Create(string productId, StockActionTypes stockActionType, int count, string correlationId, IStockActionUniqueChecker stockActionUniqueChecker, CancellationToken cancellationToken = default) { if (string.IsNullOrEmpty(correlationId)) { throw new CorrelationIdEmptyException(); } if (!stockActionUniqueChecker.CheckAsync(correlationId, cancellationToken).ConfigureAwait(false).GetAwaiter().GetResult()) { throw new StockActionAlreadyExistException(correlationId, stockActionType); } StockAction stockAction = new StockAction(productId, stockActionType, count, correlationId); StockActionCreatedEvent stockActionCreatedEvent = StockActionCreatedEvent.Create(stockAction); stockAction.AddDomainEvent(stockActionCreatedEvent); return(stockAction); }
public InitializeStockCommandHandler(IStockDbContext stockDbContext, IStockActionUniqueChecker stockActionUniqueChecker) { _stockDbContext = stockDbContext; _stockActionUniqueChecker = stockActionUniqueChecker; }
public RemoveFromStockCommandHandler(IStockActionUniqueChecker stockActionUniqueChecker, IStockDbContext stockDbContext) { _stockActionUniqueChecker = stockActionUniqueChecker; _stockDbContext = stockDbContext; }