Module: SerializeBehavior
- Included in:
- Flow, NetworkElement
- Defined in:
- lib/behaviors/serialize_behavior.rb
Instance Method Summary collapse
- #transform_to_output_representation(path_to_templates_directory) ⇒ Object
- #validate_concrete_builder ⇒ Object
Instance Method Details
#transform_to_output_representation(path_to_templates_directory) ⇒ Object
2 3 4 5 6 7 |
# File 'lib/behaviors/serialize_behavior.rb', line 2 def transform_to_output_representation(path_to_templates_directory) load "#{path_to_templates_directory}/#{self.class.name}_concrete_builder.rb" self.class.send(:include, Kernel.const_get("#{self.class.name}ConcreteBuilder")) validate_concrete_builder build_output_representation end |
#validate_concrete_builder ⇒ Object
9 10 11 12 13 |
# File 'lib/behaviors/serialize_behavior.rb', line 9 def validate_concrete_builder [:build_output_representation].each do |method| raise ArgumentError, "It was expected to load a #{self.class.name}ConcreteBuilder module from #{path_to_templates_directory}/builders/pdm that implements the method #{method}, but the one provided does not have this method implemented" unless self.respond_to? method end end |