class Bcome::Node::Inventory::Merge
Attributes
dynamic_nodes_loaded[R]
Public Class Methods
new(*params)
click to toggle source
Calls superclass method
Bcome::Node::Inventory::Base::new
# File lib/objects/node/inventory/merge.rb, line 9 def initialize(*params) super raise Bcome::Exception::MissingInventoryContributors, @views unless @views[:contributors] end
Public Instance Methods
contributing_inventories()
click to toggle source
# File lib/objects/node/inventory/merge.rb, line 26 def contributing_inventories @inventories ||= @views[:contributors].collect { |inventory_key| load_inventory(inventory_key) } end
do_set_resources()
click to toggle source
# File lib/objects/node/inventory/merge.rb, line 38 def do_set_resources ::Bcome::Node::Resources::Merged.new(inventory: self) end
load_inventory(from_crumb)
click to toggle source
# File lib/objects/node/inventory/merge.rb, line 42 def load_inventory(from_crumb) inventory = ::Bcome::Node::Factory.instance.bucket[from_crumb] raise Bcome::Exception::CannotFindInventory, "for key '#{from_crumb}'" unless inventory inventory end
load_nodes()
click to toggle source
# File lib/objects/node/inventory/merge.rb, line 18 def load_nodes contributing_inventories.each do |inventory| inventory.load_nodes unless inventory.nodes_loaded? end resources end
nodes_loaded?()
click to toggle source
# File lib/objects/node/inventory/merge.rb, line 14 def nodes_loaded? !contributing_inventories.collect(&:nodes_loaded?).include?(false) end
resources()
click to toggle source
# File lib/objects/node/inventory/merge.rb, line 30 def resources @resources ||= do_set_resources end
update_nodes()
click to toggle source
# File lib/objects/node/inventory/merge.rb, line 34 def update_nodes resources.update_nodes(self) end