class MediaArtsDb::Comic::Component

Attributes

id[R]

Public Class Methods

new(id, content = {}, retrieved = false) click to toggle source
# File lib/media_arts_db/comic/component.rb, line 6
def initialize(id, content = {}, retrieved = false)
  @id = id
  @content = content
  @retrieved = retrieved
end

Public Instance Methods

[](key) click to toggle source
# File lib/media_arts_db/comic/component.rb, line 12
def [](key)
  if @content.has_key?(key)
    @content[key]
  else
    unless retrieved?
      @content.merge!(@retriever.execute.content)
      @retrieved = true
      @content.has_key?(key) ? @content[key] : nil
    end
  end
end
content() click to toggle source
# File lib/media_arts_db/comic/component.rb, line 28
def content
  unless retrieved?
    @content.merge!(@retriever.execute.content)
    @retrieved = true
  end
  @content
end
content_cache() click to toggle source
# File lib/media_arts_db/comic/component.rb, line 36
def content_cache
  @content
end
method_missing(name, *args) click to toggle source
# File lib/media_arts_db/comic/component.rb, line 24
def method_missing(name, *args)
  self[name.to_sym]
end

Private Instance Methods

retrieved?() click to toggle source
# File lib/media_arts_db/comic/component.rb, line 42
def retrieved?
  @retrieved
end