public LibraryResults SearchLibrary(SearchLibraryRequest request) { try { if (string.IsNullOrEmpty(request.TitleName)) { return(new LibraryResults() { Outcome = Result.Success, Books = repo.FindAll().ToList() }); } return(new LibraryResults() { Outcome = Result.Success, Books = repo.FindByTitle(request.TitleName).ToList() }); } catch (Exception ex) { // Log the errror return(new LibraryResults { Outcome = Result.Failed }); } }
/// <summary> /// /// </summary> /// <exception cref="IO.Swagger.Client.ApiException">Thrown when fails to make API call</exception> /// <param name="request"></param> /// <returns>Task of ApiResponse (LibraryResults)</returns> public async System.Threading.Tasks.Task <ApiResponse <LibraryResults> > LibrarySearchLibraryAsyncWithHttpInfo(SearchLibraryRequest request) { // verify the required parameter 'request' is set if (request == null) { throw new ApiException(400, "Missing required parameter 'request' when calling LibraryApi->LibrarySearchLibrary"); } var localVarPath = "/api/library/v1/searchLibrary"; var localVarPathParams = new Dictionary <String, String>(); var localVarQueryParams = new List <KeyValuePair <String, String> >(); var localVarHeaderParams = new Dictionary <String, String>(this.Configuration.DefaultHeader); var localVarFormParams = new Dictionary <String, String>(); var localVarFileParams = new Dictionary <String, FileParameter>(); Object localVarPostBody = null; // to determine the Content-Type header String[] localVarHttpContentTypes = new String[] { "application/json", "text/json", "application/xml", "text/xml", "application/x-www-form-urlencoded" }; String localVarHttpContentType = this.Configuration.ApiClient.SelectHeaderContentType(localVarHttpContentTypes); // to determine the Accept header String[] localVarHttpHeaderAccepts = new String[] { "application/json", "text/json", "application/xml", "text/xml" }; String localVarHttpHeaderAccept = this.Configuration.ApiClient.SelectHeaderAccept(localVarHttpHeaderAccepts); if (localVarHttpHeaderAccept != null) { localVarHeaderParams.Add("Accept", localVarHttpHeaderAccept); } if (request != null && request.GetType() != typeof(byte[])) { localVarPostBody = this.Configuration.ApiClient.Serialize(request); // http body (model) parameter } else { localVarPostBody = request; // byte array } // make the HTTP request IRestResponse localVarResponse = (IRestResponse)await this.Configuration.ApiClient.CallApiAsync(localVarPath, Method.POST, localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarFileParams, localVarPathParams, localVarHttpContentType); int localVarStatusCode = (int)localVarResponse.StatusCode; if (ExceptionFactory != null) { Exception exception = ExceptionFactory("LibrarySearchLibrary", localVarResponse); if (exception != null) { throw exception; } } return(new ApiResponse <LibraryResults>(localVarStatusCode, localVarResponse.Headers.ToDictionary(x => x.Name, x => x.Value.ToString()), (LibraryResults)this.Configuration.ApiClient.Deserialize(localVarResponse, typeof(LibraryResults)))); }
/// <summary> /// /// </summary> /// <exception cref="IO.Swagger.Client.ApiException">Thrown when fails to make API call</exception> /// <param name="request"></param> /// <returns>Task of LibraryResults</returns> public async System.Threading.Tasks.Task <LibraryResults> LibrarySearchLibraryAsync(SearchLibraryRequest request) { ApiResponse <LibraryResults> localVarResponse = await LibrarySearchLibraryAsyncWithHttpInfo(request); return(localVarResponse.Data); }
/// <summary> /// /// </summary> /// <exception cref="IO.Swagger.Client.ApiException">Thrown when fails to make API call</exception> /// <param name="request"></param> /// <returns>LibraryResults</returns> public LibraryResults LibrarySearchLibrary(SearchLibraryRequest request) { ApiResponse <LibraryResults> localVarResponse = LibrarySearchLibraryWithHttpInfo(request); return(localVarResponse.Data); }