public ActionResult HandleView([FromQuery] Models.Requests.ViewProcessingRequest request) { string currentId = User.Id(); int? userId = null; if (currentId != null) { userId = int.Parse(currentId); } var viewProcessingRequest = new ViewProcessingRequest(userId, request.VideoId); _viewProcessingUseCase.Handle(viewProcessingRequest, _viewProcessingPresenter); return(_viewProcessingPresenter.ContentResult); }
public bool Handle(ViewProcessingRequest request, IOutputPort <ViewProcessingResponse> outputPort) { if (request.UserId != null) { if (_userRepository.FindById((int)(request.UserId)) == null) { outputPort.Handle(new ViewProcessingResponse(new[] { new Error(404, "user not found") })); return(false); } } if (_videoRepository.FindById(request.VideoId) == null) { outputPort.Handle(new ViewProcessingResponse(new[] { new Error(404, "video not found") })); return(false); } _videoRepository.HandleView(request.VideoId, request.UserId); outputPort.Handle(new ViewProcessingResponse()); return(true); }