Class: TraceViz::Config::Copier

Inherits:
Object
  • Object
show all
Defined in:
lib/trace_viz/config/copier.rb

Instance Method Summary collapse

Constructor Details

#initialize(configuration) ⇒ Copier

Returns a new instance of Copier.



6
7
8
9
# File 'lib/trace_viz/config/copier.rb', line 6

def initialize(configuration)
  @origin_configuration = configuration
  @settings = origin_configuration.settings
end

Instance Method Details

#copyObject



11
12
13
14
15
16
# File 'lib/trace_viz/config/copier.rb', line 11

def copy
  copied_settings = deep_copy(settings)
  copy = origin_configuration.class.new
  copied_settings.each { |key, value| copy.update(key, value) }
  copy
end