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
# 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))
  })
  self.resources = {}
end

Instance Method Details

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




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

def add(resources, options = {})
  config    = Config.ensure(options)    
  resources = normalize(info[:name], resources.dup, 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




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

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

#composite_resources=(resources) ⇒ Object




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

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

#default(default = {}) ⇒ Object




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

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

#default=(default) ⇒ Object




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

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

#info(default = {}) ⇒ Object


Property accessors / modifiers



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

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

#info=(info) ⇒ Object




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

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

#inspectObject




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

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

#resources(default = {}) ⇒ Object




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

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

#resources=(resources) ⇒ Object




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

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