Class: FeedAbstract::Item::Atom

Inherits:
Object
  • Object
show all
Includes:
FeedAbstractMixins::Atom
Defined in:
lib/feed-abstract/item/atom.rb

Overview

See FeedAbstractMixins::Atom for more instance methods.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from FeedAbstractMixins::Atom

#author, #authors, #categories, #category, #guid, #link, #rights, #title, #updated

Constructor Details

#initialize(item, channel) ⇒ Atom

Returns a new instance of Atom.



13
14
15
16
# File 'lib/feed-abstract/item/atom.rb', line 13

def initialize(item,channel)
  @item = @source = item
  @channel = channel
end

Instance Attribute Details

#channelObject (readonly)

Returns the value of attribute channel.



11
12
13
# File 'lib/feed-abstract/item/atom.rb', line 11

def channel
  @channel
end

#itemObject (readonly)

Returns the value of attribute item.



11
12
13
# File 'lib/feed-abstract/item/atom.rb', line 11

def item
  @item
end

#sourceObject (readonly)

Returns the value of attribute source.



11
12
13
# File 'lib/feed-abstract/item/atom.rb', line 11

def source
  @source
end

Instance Method Details

#contentObject

The full content of the item, most likely html.



19
20
21
22
# File 'lib/feed-abstract/item/atom.rb', line 19

def content
  return '' if @item.content.nil?
  @item.content.content
end

#contributorObject

The contributor list as a string joined with a comma.



31
32
33
34
# File 'lib/feed-abstract/item/atom.rb', line 31

def contributor
  return '' if self.contributors.empty?
  self.contributors.join(', ')
end

#contributorsObject

The contributor list as an array.



25
26
27
28
# File 'lib/feed-abstract/item/atom.rb', line 25

def contributors
  return [] if @item.contributors.empty?
  @item.contributors.reject{|con| con.name.content == '' || con.name.content.match(/^\s+$/)}.collect{|c| c.name.content}
end

#publishedObject

A Time object



45
46
47
48
# File 'lib/feed-abstract/item/atom.rb', line 45

def published
  return '' if @item.published.nil?
  @item.published.content
end

#summaryObject



36
37
38
39
40
41
42
# File 'lib/feed-abstract/item/atom.rb', line 36

def summary
  if self.channel.generator == 'Twitter'
    return self.title
  end
  return '' if @item.summary.nil?
  @item.summary.content
end