books method

Future<List<Book>> books(
  1. BookSorting sorting,
  2. SortingDirection direction
)

Implementation

Future<List<Book>> books(BookSorting sorting, SortingDirection direction) async {
  Uri uri = _httpClient.config.generateApiUri(
      '/library/' + id.toString() + '/books',
      queryParameters: {
        'sort': sorting.name,
        'direction': direction.name
      }
  );

  http.Response res = await _httpClient.get(uri);
  Map json = jsonDecode(res.body);

  List<Book> books = [];

  for(int i = 0;i < json['books'].length; i++){
    Map book = json['books'][i];
    books.add(
        Book(
            book['id'],
            await this._cacheController.getLibraryCache().getById(book['library']),
            book['name'],
            _cacheController,
            _httpClient
        )
    );
  }

  return books;
}