Class FeedParser::AtomItem
In: lib/feedparser/feedparser.rb
Parent: FeedItem
RuntimeError UnknownFeedTypeException FeedItem\n[lib/feedparser/feedparser.rb\nlib/feedparser/html-output.rb\nlib/feedparser/text-output.rb] AtomItem RSSItem SGMLParser HTML2TextParser Feed\n[lib/feedparser/feedparser.rb\nlib/feedparser/html-output.rb\nlib/feedparser/text-output.rb] lib/feedparser/feedparser.rb lib/feedparser/sgml-parser.rb lib/feedparser/html2text-parser.rb FeedParser Module: FeedParser

Methods

parse  

Public Instance methods

[Source]

     # File lib/feedparser/feedparser.rb, line 223
223:     def parse(item)
224:       # Title
225:       if (e = item.elements['title']) && e.text
226:         @title = e.text.toUTF8(@feed.encoding).rmWhiteSpace!
227:       end
228:       # Link
229:       item.each_element('link') do |e|
230:         if e.attribute('type') and (
231:             e.attribute('type').value == 'text/html' or
232:             e.attribute('type').value == 'application/xhtml' or
233:             e.attribute('type').value == 'application/xhtml+xml')
234:           if (h = e.attribute('href')) && h.value
235:             @link = h.value
236:           end
237:         end
238:       end
239:       # Content
240:       if e = item.elements['content'] || item.elements['summary']
241:         if (e.attribute('mode') and e.attribute('mode').value == 'escaped') &&
242:           e.text
243:           @content = e.text.toUTF8(@feed.encoding).rmWhiteSpace!
244:         else
245:           @content = FeedParser::getcontent(e, @feed)
246:         end
247:       end
248:       # Date
249:       if (e = item.elements['issued'] || e = item.elements['created']) && e.text
250:         begin
251:           @date = Time::xmlschema(e.text)
252:         rescue
253:           begin
254:             @date = Time::rfc2822(e.text)
255:           rescue
256:             begin
257:               @date = Time::parse(e.text)
258:             rescue
259:               @date = nil
260:             end
261:           end
262:         end
263:       end
264:       # Creator
265:       @creator = @feed.creator
266:       if (e = item.elements['author/name']) && e.text
267:         @creator = e.text.toUTF8(@feed.encoding).rmWhiteSpace!
268:       end
269:     end

[Validate]