Class: LogStash::Setting::Modules

Inherits:
Coercible show all
Defined in:
lib/logstash/settings.rb

Instance Attribute Summary

Attributes inherited from LogStash::Setting

#default, #name

Instance Method Summary collapse

Methods inherited from LogStash::Setting

#==, #reset, #set?, #strict?, #to_hash, #validate_value, #value

Methods included from Util::Loggable

included, #logger, #slow_logger

Constructor Details

#initialize(name, klass, default = nil) ⇒ Modules

Returns a new instance of Modules.



568
569
570
# File 'lib/logstash/settings.rb', line 568

def initialize(name, klass, default = nil)
  super(name, klass, default, false)
end

Instance Method Details

#coerce(value) ⇒ Object



578
579
580
581
582
583
# File 'lib/logstash/settings.rb', line 578

def coerce(value)
  if value.is_a?(@klass)
    return value
  end
  @klass.new(value)
end

#set(value) ⇒ Object



572
573
574
575
576
# File 'lib/logstash/settings.rb', line 572

def set(value)
  @value = coerce(value)
  @value_is_set = true
  @value
end