class Miteru::Feeds::Feed

Public Instance Methods

breakdowend_urls() click to toggle source

Return breakdowned URLs

@return [Array<String>] Breakdowned URLs

# File lib/miteru/feeds/feed.rb, line 37
def breakdowend_urls
  urls.select { |url| url.start_with?("http://", "https://") }.map do |url|
    breakdown(url, Miteru.configuration.directory_traveling?)
  end.flatten.uniq
end
entries() click to toggle source

Return entries

@return [Array<Miteru::Entry>]

# File lib/miteru/feeds/feed.rb, line 26
def entries
  breakdowend_urls.map do |url|
    Entry.new(url, source)
  end
end
source() click to toggle source
# File lib/miteru/feeds/feed.rb, line 8
def source
  @source ||= self.class.to_s.split("::").last
end
urls() click to toggle source

Return URLs

@return [Array<String>] URLs

# File lib/miteru/feeds/feed.rb, line 17
def urls
  raise NotImplementedError, "You must implement #{self.class}##{__method__}"
end

Private Instance Methods

get(url) click to toggle source
# File lib/miteru/feeds/feed.rb, line 45
def get(url)
  res = HTTPClient.get(url)
  raise HTTPResponseError if res.code != 200

  res.body.to_s
end