class Rundock::TargetFactory
Constants
- TargetNotSupportedError
Public Class Methods
instance(type)
click to toggle source
# File lib/rundock/target_factory.rb, line 5 def self.instance(type) self.new(type) end
new(type)
click to toggle source
# File lib/rundock/target_factory.rb, line 9 def initialize(type) @type = type end
Public Instance Methods
create(name, attributes)
click to toggle source
# File lib/rundock/target_factory.rb, line 13 def create(name, attributes) klass = "Rundock::Target::#{@type.to_s.to_camel_case}" Logger.debug("initialize #{klass} target") raise TargetNotSupportedError unless Rundock::Target::Base.subclasses.map(&:to_s).include?(klass) obj = nil klass.split('::').map do |k| obj = if obj.nil? Kernel.const_get(k) else obj = obj.const_get(k) end end target = obj.new(name, attributes) target end