Class: Shared::GroupableNode Abstract

Inherits:
Node show all
Defined in:
lib/vas/shared/nodes.rb

Overview

This class is abstract.

A node that can be grouped

Instance Attribute Summary

Attributes inherited from Node

#agent_home, #architecture, #host_names, #ip_addresses, #ipv4_addresses, #ipv6_addresses, #metadata, #operating_system

Attributes inherited from Resource

#location, #security

Instance Method Summary collapse

Methods inherited from Node

#update

Constructor Details

#initialize(location, client, group_class) ⇒ GroupableNode

Returns a new instance of GroupableNode.



79
80
81
82
# File 'lib/vas/shared/nodes.rb', line 79

def initialize(location, client, group_class)
  super(location, client)
  @group_class = group_class
end

Instance Method Details

#groupsGroup[]

Returns the groups that contain this node.

Returns:

  • (Group[])

    the groups that contain this node



90
91
92
# File 'lib/vas/shared/nodes.rb', line 90

def groups
  @groups ||= create_resources_from_links('group', @group_class)
end

#reloadObject



84
85
86
87
# File 'lib/vas/shared/nodes.rb', line 84

def reload
  super
  @groups = nil
end