Sha256: 534d250313077088a97fb57914c4fa7ea87c728052dd11060f461f362294db34

Contents?: true

Size: 788 Bytes

Versions: 6

Compression:

Stored size: 788 Bytes

Contents

module DPLibrary
  class DocumentCollection < Base
    attr_accessor :count,
                  :offset,
                  :limit,
                  :documents

    def initialize(parameters)
      json_response = find(parameters)

      response_values = super(json_response)

      set_method(response_values)
    end

    private
    def find(parameters)
      get('items', parameters)
    end

    def set_method(values)
      self.count = values['count']
      self.offset = values['start']
      self.limit = values['limit']

      self.documents = create_documents(values['docs'])
    end

    def create_documents(document_array)
      documents = []

      document_array.each do |document|
        documents << Document.new(document)
      end

      documents
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
DPLibrary-0.0.6 lib/DPLibrary/document_collection.rb
DPLibrary-0.0.5 lib/DPLibrary/document_collection.rb
DPLibrary-0.0.4 lib/DPLibrary/document_collection.rb
DPLibrary-0.0.3 lib/DPLibrary/document_collection.rb
DPLibrary-0.0.2 lib/DPLibrary/document_collection.rb
DPLibrary-0.0.1 lib/DPLibrary/document_collection.rb