public override async Task <IExecutionResult <List <Product> > > HandleAsync(ProductGetAllQuery query, CancellationToken cancellationToken)
        {
            var result = await _productRepository.GetAll();

            return(new SuccessExecutionResult <List <Product> >(GetType(), result));
        }
        public override AbstractOperationResult <List <Product> > Handle(ProductGetAllQuery query)
        {
            var result = _repository.GetAll().Result.ToList();

            return(new SuccessOperationResult <List <Product> >(result));
        }