Sha256: da637047905e4b552d8bca795bdb716e9155bdab0fdbeb315ecb5956f8f3bad3

Contents?: true

Size: 936 Bytes

Versions: 6

Compression:

Stored size: 936 Bytes

Contents

module Gummi
  module DbLayer
    module Document
      module Search
        class Result

          attr_reader :took, :total, :hits, :facets

          def initialize(response, converter, per_page, page)
            @response  = Hashie::Mash.new response
            @took      = @response.hits.took
            @total     = @response.hits.total
            @hits      = @response.hits.hits
            @facets    = @response.facets
            @converter = converter
            @per_page  = per_page
            @page      = page
          end

          def documents
            @documents ||= begin
              documents = Array(converter.hits_to_documents(hits)) if hits
              Leaflet::Collection.new documents, total: total, page: page, per_page: per_page
            end
          end

          private

          attr_reader :response, :converter, :per_page, :page, :hits

        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
gummi-0.3.2 lib/gummi/db_layer/document/search/result.rb
gummi-0.3.1 lib/gummi/db_layer/document/search/result.rb
gummi-0.3.0 lib/gummi/db_layer/document/search/result.rb
gummi-0.2.3 lib/gummi/db_layer/document/search/result.rb
gummi-0.2.2 lib/gummi/db_layer/document/search/result.rb
gummi-0.2.1 lib/gummi/db_layer/document/search/result.rb