public BookCatalogResource Query()
 {
     var books = _bookRepository.GetAll().Where(book => book.State == BookState.CheckedIn); ;
     BookCatalogResource resource = new BookCatalogResource();
     resource.Self = _resourceLinker.GetResourceLink<BooksController>(request => request.Get(), "self", "Checked In Books", HttpMethod.Get);
     resource.Catalog = new List<BookResource>();
     foreach (var book in books)
     {
         resource.Catalog.Add(_bookResourceMapper.MapToResouce(book));
     }
     return resource;
 }
 public BookCatalogResource Query()
 {
     var books = _bookRepository.GetAll();
     BookCatalogResource resource = new BookCatalogResource();
     resource.Self = _resourceLinker.GetResourceLink<BooksController>(request => request.Get(), "self","Library Catalog", HttpMethod.Get);
     resource.Links = new List<Link>();
     resource.Links.Add(_resourceLinker.GetResourceLink<RootController>(request => request.Get(),"home","Home",HttpMethod.Get));
     resource.Catalog = new List<BookResource>();
     foreach(var book in books)
     {
         resource.Catalog.Add(_bookResourceMapper.MapToResouce(book));
     }
     return resource;
 }