public StockActionResponse(long productId, long stockActionId, StockActionTypes stockActionType, int count) { StockActionId = stockActionId; StockActionType = stockActionType; Count = count; ProductId = productId; }
private StockAction(Guid id, DateTime createdOn, string productId, StockActionTypes stockActionType, int count, string correlationId) { Id = id; CreatedOn = createdOn; ProductId = productId; StockActionType = stockActionType; Count = count; CorrelationId = correlationId; }
public StockActionModel(long id, DateTime createdOn, long productId, StockActionTypes stockActionType, int count, string correlationId) { Id = id; CreatedOn = createdOn; ProductId = productId; StockActionType = stockActionType; Count = count; CorrelationId = correlationId; }
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); }
private StockAction(string productId, StockActionTypes stockActionType, int count, string correlationId) : this(Guid.NewGuid(), DateTime.UtcNow, productId, stockActionType, count, correlationId) { }
public StockActionModel(long productId, StockActionTypes stockActionType, int count, string correlationId) : this(default, DateTime.UtcNow, productId, stockActionType, count, correlationId) { }
public StockActionAlreadyExistException(string correlationId, StockActionTypes stockActionType) : base($"{stockActionType} is already executed with {correlationId}") { }