public async Task <HttpResponse> Get(string slug = "", string searchTerm = "", string searchFolder = "", string currentUrl = "") { var url = _urlGenerator.UrlFor <Article>(slug); var httpResponse = await _httpClient.Get(url, authenticationHeaders); if (!httpResponse.IsSuccessful()) { return(httpResponse); } var model = HttpResponse.Build <Article>(httpResponse); var article = (Article)model.Content; var bucket = new S3BucketSearch(); bucket.Files = new List <string>(); bucket.Folders = new List <string>(); bucket.Slug = slug; bucket.SearchTerm = searchTerm; bucket.SearchFolder = searchFolder; bucket.AWSLink = ServiceUrl; bucket.S3Bucket = BucketName; bucket.CurrentUrl = currentUrl; if (!string.IsNullOrEmpty(searchTerm) && !string.IsNullOrEmpty(searchFolder)) { bucket.Files = await ListFilesIn(searchFolder, searchTerm); } article.S3Bucket = bucket; var processedModel = _articleFactory.Build(article); return(HttpResponse.Successful(200, processedModel)); }
public async Task <HttpResponse> Get <T>(string slug = "", List <Query> queries = null) { var url = _urlGenerator.UrlFor <T>(slug, queries); var httpResponse = await _httpClient.Get(url, authenticationHeaders); if (!httpResponse.IsSuccessful()) { return(httpResponse); } var model = HttpResponse.Build <T>(httpResponse); var processedModel = _contentTypeFactory.Build((T)model.Content); return(HttpResponse.Successful(200, processedModel)); }
public async Task <HttpResponse> Get(string slug = "") { var url = _urlGenerator.UrlFor <DocumentPage>(slug); var httpResponse = await _httpClient.Get(url, authenticationHeaders); if (!httpResponse.IsSuccessful()) { return(httpResponse); } var model = HttpResponse.Build <DocumentPage>(httpResponse); var documentPage = (DocumentPage)model.Content; var processedModel = _documentPageFactory.Build(documentPage); return(HttpResponse.Successful(200, processedModel)); }