class Traver::Factory

Attributes

name[R]
params[R]
parent_factory[R]

Public Class Methods

new(name, params, parent_factory) click to toggle source
# File lib/traver/factory.rb, line 5
def initialize(name, params, parent_factory)
  @name   = name
  @params = params
  @parent_factory = parent_factory
end

Public Instance Methods

inherited_params() click to toggle source
# File lib/traver/factory.rb, line 23
def inherited_params
  if parent_factory
    parent_factory.inherited_params.merge(params)
  else
    params
  end
end
object_class() click to toggle source
# File lib/traver/factory.rb, line 35
def object_class
  Object.const_get(object_class_name)
end
object_class_name() click to toggle source
# File lib/traver/factory.rb, line 31
def object_class_name
  root_factory.name.to_s.camelize
end
root_factory() click to toggle source
# File lib/traver/factory.rb, line 11
def root_factory
  if parent_factory
    parent_factory.root_factory
  else
    self
  end
end
root_name() click to toggle source
# File lib/traver/factory.rb, line 19
def root_name
  root_factory.name
end