module Nymphia::DSL::RecursiveMethods

Private Instance Methods

default_params(&block) click to toggle source
# File lib/nymphia/dsl/recursive_methods.rb, line 4
def default_params(&block)
  new_default_params = Nymphia::DSL::Context::DefaultParams.new(@context, &block).result[:contents]
  @context[:default_params][@group_name] = new_default_params
end
gateway(name, description=nil, &block) click to toggle source
# File lib/nymphia/dsl/recursive_methods.rb, line 20
def gateway(name, description=nil, &block)
  process_dsl_with(Nymphia::DSL::Context::Gateway, name, description, &block)
end
group(name, &block) click to toggle source
# File lib/nymphia/dsl/recursive_methods.rb, line 46
def group(name, &block)
  name = name.to_s

  new_hosts = Nymphia::DSL::Context::Group.new(@context, name, &block).result[:hosts]
  @result[:hosts].concat(new_hosts)
end
host(name, description=nil, &block) click to toggle source
# File lib/nymphia/dsl/recursive_methods.rb, line 16
def host(name, description=nil, &block)
  process_dsl_with(Nymphia::DSL::Context::Host, name, description, &block)
end
process_dsl_with(dsl_class, name, description, &block) click to toggle source
# File lib/nymphia/dsl/recursive_methods.rb, line 28
def process_dsl_with(dsl_class, name, description, &block)
  name = name.to_s
  description = description.to_s if description
  default_params = @context[:default_params][@group_name]
  gateway_usage = @context[:gateway_usage][@group_name]

  new_host = dsl_class.new(
    @context,
    name,
    description,
    default_params,
    gateway_usage,
    &block
  ).result

  @result[:hosts] << new_host
end
proxy(name, description=nil, &block) click to toggle source
# File lib/nymphia/dsl/recursive_methods.rb, line 24
def proxy(name, description=nil, &block)
  process_dsl_with(Nymphia::DSL::Context::Proxy, name, description, &block)
end
use_gateway(name) click to toggle source
# File lib/nymphia/dsl/recursive_methods.rb, line 9
def use_gateway(name)
  name = name.to_s

  new_gateway_usage = Nymphia::DSL::Context::UseGateway.new(@context, name).result
  @context[:gateway_usage][@group_name] = new_gateway_usage
end