Class: Bcome::Node::CacheHandler

Inherits:
Object
  • Object
show all
Defined in:
lib/objects/node/cache_handler.rb

Instance Method Summary collapse

Constructor Details

#initialize(inventory_node) ⇒ CacheHandler

Returns a new instance of CacheHandler.



3
4
5
# File 'lib/objects/node/cache_handler.rb', line 3

def initialize(inventory_node)
  @inventory_node = inventory_node
end

Instance Method Details

#do_cache_nodes!Object



7
8
9
10
11
# File 'lib/objects/node/cache_handler.rb', line 7

def do_cache_nodes!
  @inventory_node.load_nodes unless @inventory_node.nodes_loaded?
  all_nodes = @inventory_node.resources.active
  write_to_in_memory_cache!(all_nodes) if all_nodes.any?
end

#dynamic_nodes_to_cache_hash(nodes) ⇒ Object



20
21
22
# File 'lib/objects/node/cache_handler.rb', line 20

def dynamic_nodes_to_cache_hash(nodes)
  nodes.collect(&:cache_data)
end

#write_to_in_memory_cache!(nodes) ⇒ Object



13
14
15
16
17
18
# File 'lib/objects/node/cache_handler.rb', line 13

def write_to_in_memory_cache!(nodes)
  @inventory_node.views[:load_machines_from_cache] = true
  static_server_data = dynamic_nodes_to_cache_hash(nodes)
  @inventory_node.views[:static_servers] = static_server_data
  nil
end