Class: Puree::Extractor::ResearchOutput

Inherits:
Resource
  • Object
show all
Defined in:
lib/puree/extractor/research_output.rb

Overview

Research output extractor.

Instance Method Summary collapse

Methods inherited from Resource

#initialize

Constructor Details

This class inherits a constructor from Puree::Extractor::Resource

Instance Method Details

#countFixnum

Count of records available.

Returns:

  • (Fixnum)


20
21
22
# File 'lib/puree/extractor/research_output.rb', line 20

def count
  record_count :research_output
end

#find(id) ⇒ Puree::Model::ResearchOutput?

Parameters:

  • id (String)

Returns:



11
12
13
14
15
# File 'lib/puree/extractor/research_output.rb', line 11

def find(id)
  super id: id,
        api_resource_type: :research_output,
        xml_extractor_resource_type: :research_output
end

#randomPuree::Model::ResearchOutput or subclass?

Random record. Includes the metadata from Puree::Model::ResearchOutput as a minimum.

Returns:



27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/puree/extractor/research_output.rb', line 27

def random
  client = Puree::REST::Client.new @config
  offset = rand(0..count-1)
  response = client.research_outputs.all params: {size: 1, offset: offset}
  research_outputs_hash = Puree::XMLExtractor::Collection.research_outputs response.to_s
  research_outputs_array = []
  research_outputs_hash.each do |k, v|
    research_outputs_array += v
  end
  return nil if research_outputs_array.empty?
  research_outputs_array[0]
end