Example #1
0
 public AdminController(IGetProductsUseCase getProductsUseCase, GetProductsPresenter getProductsPresenter,
                        IGetProductDetailUseCase getProductDetailUseCase, GetProductDetailPresenter getProductDetailPresenter,
                        ICreateProductUseCase createProductUseCase, CreateProductPresenter createProductPresenter,
                        IUpdateProductDetailUseCase updateProductDetailUseCase, UpdateProductDetailPresenter updateProductDetailPresenter,
                        IRemoveProductUseCase removeProductUseCase, RemoveProductPresenter removeProductPresenter)
 {
     _getProductsUseCase         = getProductsUseCase; _getProductsPresenter = getProductsPresenter;
     _getProductDetailUseCase    = getProductDetailUseCase; _getProductDetailPresenter = getProductDetailPresenter;
     _createProductUseCase       = createProductUseCase; _createProductPresenter = createProductPresenter;
     _updateProductDetailUseCase = updateProductDetailUseCase; _updateProductDetailPresenter = updateProductDetailPresenter;
     _removeProductUseCase       = removeProductUseCase; _removeProductPresenter = removeProductPresenter;
 }
Example #2
0
        public async Task <IActionResult> GetProductsAsync(
            [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "products/{filterParam?}")] HttpRequest req, string filterParam = null)
        {
            _ = int.TryParse(req.Query["pageNumber"], out int pageNumber);
            _ = int.TryParse(req.Query["pageSize"], out int pageSize);

            var parameters = new PageParameters(pageNumber, pageSize);
            var presenter  = new GetProductsPresenter();
            var request    = new GetProductsRequest(parameters, filterParam);
            await _getProductsUseCase.Handle(request, presenter);

            if (presenter.PageMetadata != null)
            {
                req.HttpContext.Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(presenter.PageMetadata));
            }

            return(presenter.ContentResult);
        }
Example #3
0
 static bool handleResponse(GetProductsRequest input, GetProductsPresenter output)
 {
     output.Handle(new GetProductsResponse(TestModelFactory.GetProductSample()));
     return(true);
 }