Method: FigTree::ConfigStruct#setting_object

Defined in:
lib/fig_tree.rb

#setting_object(name, &block) ⇒ Object

Define a setting template for an array of objects via a block:

setting_object :producer do
  setting :topic
  setting :class_name
end

This will create the ‘producer` method to define these values as well as the `producer_objects` method to retrieve them.

Parameters:

  • name (Symbol)


120
121
122
123
124
125
# File 'lib/fig_tree.rb', line 120

def setting_object(name, &block)
  new_config = ConfigStruct.new("#{@name}.#{name}")
  @setting_objects[name] ||= []
  @setting_templates[name] ||= new_config
  @setting_templates[name].instance_eval(&block)
end