Class: Mccandlish::Article

Inherits:
Object
  • Object
show all
Defined in:
lib/mccandlish/article.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ Article

Returns a new instance of Article.



9
10
11
12
13
# File 'lib/mccandlish/article.rb', line 9

def initialize(params={})
  params.each_pair do |k,v|
   instance_variable_set("@#{k}", v)
  end
end

Instance Attribute Details

#abstractObject (readonly)

Returns the value of attribute abstract.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def abstract
  @abstract
end

#blogObject (readonly)

Returns the value of attribute blog.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def blog
  @blog
end

#bylineObject (readonly)

Returns the value of attribute byline.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def 
  @byline
end

#dateObject (readonly)

Returns the value of attribute date.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def date
  @date
end

#document_typeObject (readonly)

Returns the value of attribute document_type.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def document_type
  @document_type
end

#headlineObject (readonly)

Returns the value of attribute headline.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def headline
  @headline
end

#headline_printObject (readonly)

Returns the value of attribute headline_print.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def headline_print
  @headline_print
end

#headline_seoObject (readonly)

Returns the value of attribute headline_seo.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def headline_seo
  @headline_seo
end

#idObject (readonly)

Returns the value of attribute id.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def id
  @id
end

#keywordsObject (readonly)

Returns the value of attribute keywords.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def keywords
  @keywords
end

#kickerObject (readonly)

Returns the value of attribute kicker.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def kicker
  @kicker
end

#lead_paragraphObject (readonly)

Returns the value of attribute lead_paragraph.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def lead_paragraph
  @lead_paragraph
end

#news_deskObject (readonly)

Returns the value of attribute news_desk.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def news_desk
  @news_desk
end

Returns the value of attribute print_page.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def print_page
  @print_page
end

#resultsObject (readonly)

Returns the value of attribute results.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def results
  @results
end

#section_nameObject (readonly)

Returns the value of attribute section_name.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def section_name
  @section_name
end

#snippetObject (readonly)

Returns the value of attribute snippet.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def snippet
  @snippet
end

#sourceObject (readonly)

Returns the value of attribute source.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def source
  @source
end

#subsection_nameObject (readonly)

Returns the value of attribute subsection_name.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def subsection_name
  @subsection_name
end

#type_of_materialObject (readonly)

Returns the value of attribute type_of_material.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def type_of_material
  @type_of_material
end

#web_urlObject (readonly)

Returns the value of attribute web_url.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def web_url
  @web_url
end

#word_countObject (readonly)

Returns the value of attribute word_count.



5
6
7
# File 'lib/mccandlish/article.rb', line 5

def word_count
  @word_count
end

Class Method Details

.create(result) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/mccandlish/article.rb', line 19

def self.create(result)
  self.new(:id => result['_id'],
  :web_url => result['web_url'],
  :snippet => result['snippet'],
  :lead_paragraph => result['lead_paragraph'],
  :abstract => result['abstract'],
  :print_page => result['print_page'].to_i,
  :blog => result['blog'],
  :source => result['source'],
  :headline_seo => result['headline']['seo'],
  :headline => result['headline']['main'],
  :kicker => result['headline']['kicker'],
  :headline_print => result['headline']['print'],
  :keywords => result['keywords'].sort_by{|k| k['rank'].to_i},
  :date => Date.parse(result['pub_date']),
  :document_type => result['document_type'],
  :news_desk => result['news_desk'],
  :section_name => result['section_name'],
  :subsection_name => result['subsection_name'],
  :byline => result['byline'],
  :type_of_material => result['type_of_material'],
  :word_count => result['word_count'].to_i
  )
end

.create_from_results(results) ⇒ Object



15
16
17
# File 'lib/mccandlish/article.rb', line 15

def self.create_from_results(results)
  results.map{|result| Article.create(result)}
end