Sha256: f1cd37518034af76655500eceb06746edbf0773a0ad6ae3ce807244809db4870

Contents?: true

Size: 624 Bytes

Versions: 2

Compression:

Stored size: 624 Bytes

Contents

# frozen_string_literal: true

module Cinii
  class SearchResult
    class Book < Base
      def items
        items = graph['items']

        @items ||= items ? items.map { |i| item_class.new(i) } : []
      end

      private

      def item_class
        case title
        when /CiNii Books OpenSearch/
          Cinii::Item::Book
        when /CiNii Books Author/
          Cinii::Item::Author
        when /CiNii Books Library/
          Cinii::Item::Library
        when /CiNii Books Holder/
          Cinii::Item::Library
        else
          raise UnKnownResponseTypeError
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
cinii-0.1.1 lib/cinii/search_result/book.rb
cinii-0.1.0 lib/cinii/search_result/book.rb