|
|
@ -9,19 +9,6 @@ using System.Threading.Tasks; |
|
|
|
|
|
|
|
namespace Ordering.API.Application.Commands |
|
|
|
{ |
|
|
|
// Use for Idempotency in Command process
|
|
|
|
public class CancelOrderCommandIdempotentHandler : IdentifiedCommandHandler<CancelOrderCommand, bool> |
|
|
|
{ |
|
|
|
public CancelOrderCommandIdempotentHandler(IMediator mediator, IRequestManager requestManager) : base(mediator, requestManager) |
|
|
|
{ |
|
|
|
} |
|
|
|
|
|
|
|
protected override bool CreateResultForDuplicateRequest() |
|
|
|
{ |
|
|
|
return true; // Ignore duplicate requests for processing order.
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// Regular CommandHandler
|
|
|
|
public class CancelOrderCommandHandler : IAsyncRequestHandler<CancelOrderCommand, bool> |
|
|
|
{ |
|
|
@ -45,4 +32,18 @@ namespace Ordering.API.Application.Commands |
|
|
|
return await _orderRepository.UnitOfWork.SaveEntitiesAsync(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// Use for Idempotency in Command process
|
|
|
|
public class CancelOrderIdentifiedCommandHandler : IdentifiedCommandHandler<CancelOrderCommand, bool> |
|
|
|
{ |
|
|
|
public CancelOrderIdentifiedCommandHandler(IMediator mediator, IRequestManager requestManager) : base(mediator, requestManager) |
|
|
|
{ |
|
|
|
} |
|
|
|
|
|
|
|
protected override bool CreateResultForDuplicateRequest() |
|
|
|
{ |
|
|
|
return true; // Ignore duplicate requests for processing order.
|
|
|
|
} |
|
|
|
} |
|
|
|
} |