class Centaman::Object

Public Class Methods

new(args = {}) click to toggle source
# File lib/centaman/object.rb, line 4
def initialize(args = {})
  define_variables(args)
  after_init(args)
end

Public Instance Methods

after_init(args) click to toggle source
# File lib/centaman/object.rb, line 23
def after_init(args)
  # hook for subclasses
end
attributes() click to toggle source
# File lib/centaman/object.rb, line 19
def attributes
  [] # overwritten by subclasses
end
define_variables(args) click to toggle source
# File lib/centaman/object.rb, line 9
def define_variables(args)
  attributes.each do |attribute|
    val = args[attribute.centaman_key]
    attribute.value = val
    attribute.parse_value
    self.class.__send__(:attr_accessor, attribute.app_key)
    instance_variable_set("@#{attribute.app_key}", attribute.value)
  end
end