Class: CORL::Util::Puppet::ResourceGroup

Inherits:
Core
  • Object
show all
Includes:
Mixin::SubConfig
Defined in:
lib/core/util/puppet/resource_group.rb

Instance Method Summary collapse

Constructor Details

#initialize(type_info, default = {}) ⇒ ResourceGroup


Constructor / Destructor



12
13
14
15
16
17
18
19
# File 'lib/core/util/puppet/resource_group.rb', line 12

def initialize(type_info, default = {})
  super({
    :info    => hash(type_info),
    :default => symbol_map(hash(default))
  }, {}, true, true, false)

  self.resources = {}
end

Instance Method Details

#add(resources, options = {}) ⇒ Object




78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/core/util/puppet/resource_group.rb', line 78

def add(resources, options = {})
  config    = Config.ensure(options)
  resources = normalize(info[:name], Data.clone(resources), config)

  unless Data.empty?(resources)
    collection = self.resources
    resources.each do |title, resource|
      Puppet.add_resource(info, title, resource.export, config)
      collection[title] = resource
    end
    self.resources = collection
  end
  return self
end

#composite_resources(default = {}) ⇒ Object




66
67
68
# File 'lib/core/util/puppet/resource_group.rb', line 66

def composite_resources(default = {})
  return hash(_get(:composite_resources, default))
end

#composite_resources=(resources) ⇒ Object




72
73
74
# File 'lib/core/util/puppet/resource_group.rb', line 72

def composite_resources=resources
  _set(:composite_resources, symbol_map(hash(resources)))
end

#default(default = {}) ⇒ Object




42
43
44
# File 'lib/core/util/puppet/resource_group.rb', line 42

def default(default = {})
  return hash(_get(:default, default))
end

#default=(default) ⇒ Object




48
49
50
# File 'lib/core/util/puppet/resource_group.rb', line 48

def default=default
  _set(:default, symbol_map(hash(default)))
end

#info(default = {}) ⇒ Object


Property accessors / modifiers



30
31
32
# File 'lib/core/util/puppet/resource_group.rb', line 30

def info(default = {})
  return hash(_get(:info, default))
end

#info=(info) ⇒ Object




36
37
38
# File 'lib/core/util/puppet/resource_group.rb', line 36

def info=info
  _set(:info, hash(info))
end

#inspectObject




23
24
25
# File 'lib/core/util/puppet/resource_group.rb', line 23

def inspect
  "#{self.class}#{info.to_s}[#{composite_resources.keys.length}]"
end

#resources(default = {}) ⇒ Object




54
55
56
# File 'lib/core/util/puppet/resource_group.rb', line 54

def resources(default = {})
  return hash(_get(:resources, default))
end

#resources=(resources) ⇒ Object




60
61
62
# File 'lib/core/util/puppet/resource_group.rb', line 60

def resources=resources
  _set(:resources, symbol_map(hash(resources)))
end