Class: DopCommon::Interface

Inherits:
Object
  • Object
show all
Includes:
HashParser, Validator
Defined in:
lib/dop_common/interface.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from HashParser

deep_symbolize_keys, hash_of_pattern_lists_valid?, is_valid_regexp?, key_aliases, load_content, load_content_valid?, parse_hash_of_pattern_lists, parse_pattern_list, pattern_list_valid?, represents_regexp?, symbolize_keys

Methods included from Validator

#log_validation_method, #set_not_valid, #try_validate_obj, #valid?

Constructor Details

#initialize(name, hash, parent = {}) ⇒ Interface

Returns a new instance of Interface.



13
14
15
16
17
# File 'lib/dop_common/interface.rb', line 13

def initialize(name, hash, parent={})
  @name = name
  @hash = symbolize_keys(hash)
  @parsed_networks = parent[:parsed_networks]
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



11
12
13
# File 'lib/dop_common/interface.rb', line 11

def name
  @name
end

Instance Method Details

#floating_networkObject



52
53
54
# File 'lib/dop_common/interface.rb', line 52

def floating_network
  @floating_network ||= floating_network_valid? ? @hash[:floating_network] : nil
end

#gatewayObject



44
45
46
# File 'lib/dop_common/interface.rb', line 44

def gateway
  @gateway ||= false == network_obj.ip_defgw ? false : network_obj.ip_defgw.to_s
end

#ipObject



31
32
33
# File 'lib/dop_common/interface.rb', line 31

def ip
  @ip ||= ip_valid? ? @hash[:ip] : nil
end

#netmaskObject



35
36
37
# File 'lib/dop_common/interface.rb', line 35

def netmask
  @netmask ||= network_obj.ip_netmask.to_s
end

#networkObject



27
28
29
# File 'lib/dop_common/interface.rb', line 27

def network
  @network ||= network_valid? ? network_obj.name : nil
end

#set_gateway?Boolean Also known as: set_gateway

Returns:

  • (Boolean)


39
40
41
# File 'lib/dop_common/interface.rb', line 39

def set_gateway?
  @set_gateway ||= set_gateway_valid? ? (gateway == false ? false : @hash[:set_gateway]) : true
end

#validateObject



19
20
21
22
23
24
25
# File 'lib/dop_common/interface.rb', line 19

def validate
  log_validation_method('network_valid?')
  log_validation_method('ip_valid?')
  log_validation_method('set_gateway_valid?')
  log_validation_method('virtual_switch_valid?')
  log_validation_method('floating_network_valid?')
end

#virtual_switchObject



48
49
50
# File 'lib/dop_common/interface.rb', line 48

def virtual_switch
  @virtual_switch ||= virtual_switch_valid? ? @hash[:virtual_switch] : nil
end