Class: Feedjira::Parser::Atom

Inherits:
Object
  • Object
show all
Includes:
FeedUtilities, SAXMachine
Defined in:
lib/feedjira/parser/atom.rb

Overview

Parser for dealing with Atom feeds.

Constant Summary

Constants included from FeedUtilities

FeedUtilities::UPDATABLE_ATTRIBUTES

Instance Attribute Summary

Attributes included from FeedUtilities

#etag, #last_modified, #new_entries, #updated

Class Method Summary collapse

Instance Method Summary collapse

Methods included from FeedUtilities

#has_new_entries?, included, #sanitize_entries!, #update_attribute, #update_from_feed, #updated?

Class Method Details

.able_to_parse?(xml) ⇒ Boolean

:nodoc:



15
16
17
# File 'lib/feedjira/parser/atom.rb', line 15

def self.able_to_parse?(xml) #:nodoc:
  /\<feed[^\>]+xmlns\s?=\s?[\"|\'](http:\/\/www\.w3\.org\/2005\/Atom|http:\/\/purl\.org\/atom\/ns\#)[\"|\'][^\>]*\>/ =~ xml
end

.preprocess(xml) ⇒ Object



27
28
29
# File 'lib/feedjira/parser/atom.rb', line 27

def self.preprocess(xml)
  Preprocessor.new(xml).to_xml
end

Instance Method Details

#feed_urlObject



23
24
25
# File 'lib/feedjira/parser/atom.rb', line 23

def feed_url
  @feed_url ||= links.first
end

#urlObject



19
20
21
# File 'lib/feedjira/parser/atom.rb', line 19

def url
  @url || (links - [feed_url]).last || links.last
end