class Acme::Smileage::Blog::Ameblo

Attributes

author[R]

Public Class Methods

new(blog_link, author = nil) click to toggle source
# File lib/acme/smileage/blog/ameblo.rb, line 12
def initialize(blog_link, author = nil)
  @blog_link = blog_link
  @author = author
  @downloader = Acme::Smileage::Blog::AmebloDownloader.new
end

Public Instance Methods

get_entry_body(entry_header) click to toggle source
# File lib/acme/smileage/blog/ameblo.rb, line 28
def get_entry_body(entry_header)
  entry_link = coerce_entry_link(entry_header)
  @@cache[entry_link] ||= @downloader.get_entry_body(entry_link)
end
get_entry_list(page = 1) click to toggle source
# File lib/acme/smileage/blog/ameblo.rb, line 18
def get_entry_list(page = 1)
  c = (@@cache[[self.blog_link, page]] ||= @downloader.get_entry_list(self, self.blog_link, page))

  r = c.dup
  if self.author
    r.entries = r.entries.select {|e| e.author == self.author }
  end
  r
end

Private Instance Methods

coerce_entry_link(x) click to toggle source
# File lib/acme/smileage/blog/ameblo.rb, line 35
def coerce_entry_link(x)
  case x
  when String, URI
    x
  when Acme::Smileage::Blog::Entry::Header
    x.link
  else
    raise ArgumentError, "Invalid entry link: #{x}"
  end
end