Class: MistApi::GatewayIpConfigProperty

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/mist_api/models/gateway_ip_config_property.rb

Overview

GatewayIpConfigProperty Model.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(ip = SKIP, ip6 = SKIP, netmask = SKIP, netmask6 = SKIP, secondary_ips = SKIP, type = IpTypeEnum::DHCP, type6 = IpType6Enum::DISABLED) ⇒ GatewayIpConfigProperty

Returns a new instance of GatewayIpConfigProperty.



71
72
73
74
75
76
77
78
79
80
81
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 71

def initialize(ip = SKIP, ip6 = SKIP, netmask = SKIP, netmask6 = SKIP,
               secondary_ips = SKIP, type = IpTypeEnum::DHCP,
               type6 = IpType6Enum::DISABLED)
  @ip = ip unless ip == SKIP
  @ip6 = ip6 unless ip6 == SKIP
  @netmask = netmask unless netmask == SKIP
  @netmask6 = netmask6 unless netmask6 == SKIP
  @secondary_ips = secondary_ips unless secondary_ips == SKIP
  @type = type unless type == SKIP
  @type6 = type6 unless type6 == SKIP
end

Instance Attribute Details

#ipString

TODO: Write general description for this method

Returns:

  • (String)


14
15
16
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 14

def ip
  @ip
end

#ip6String

TODO: Write general description for this method

Returns:

  • (String)


18
19
20
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 18

def ip6
  @ip6
end

#netmaskString

TODO: Write general description for this method

Returns:

  • (String)


22
23
24
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 22

def netmask
  @netmask
end

#netmask6String

TODO: Write general description for this method

Returns:

  • (String)


26
27
28
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 26

def netmask6
  @netmask6
end

#secondary_ipsArray[String]

Optional list of secondary IPs in CIDR format

Returns:

  • (Array[String])


30
31
32
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 30

def secondary_ips
  @secondary_ips
end

#typeIpTypeEnum

enum: ‘dhcp`, `static`

Returns:



34
35
36
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 34

def type
  @type
end

#type6IpType6Enum

enum: ‘autoconf`, `dhcp`, `disabled`, `static`

Returns:



38
39
40
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 38

def type6
  @type6
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 84

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  ip = hash.key?('ip') ? hash['ip'] : SKIP
  ip6 = hash.key?('ip6') ? hash['ip6'] : SKIP
  netmask = hash.key?('netmask') ? hash['netmask'] : SKIP
  netmask6 = hash.key?('netmask6') ? hash['netmask6'] : SKIP
  secondary_ips = hash.key?('secondary_ips') ? hash['secondary_ips'] : SKIP
  type = hash['type'] ||= IpTypeEnum::DHCP
  type6 = hash['type6'] ||= IpType6Enum::DISABLED

  # Create object from extracted values.
  GatewayIpConfigProperty.new(ip,
                              ip6,
                              netmask,
                              netmask6,
                              secondary_ips,
                              type,
                              type6)
end

.namesObject

A mapping from model property names to API property names.



41
42
43
44
45
46
47
48
49
50
51
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 41

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['ip'] = 'ip'
  @_hash['ip6'] = 'ip6'
  @_hash['netmask'] = 'netmask'
  @_hash['netmask6'] = 'netmask6'
  @_hash['secondary_ips'] = 'secondary_ips'
  @_hash['type'] = 'type'
  @_hash['type6'] = 'type6'
  @_hash
end

.nullablesObject

An array for nullable fields



67
68
69
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 67

def self.nullables
  []
end

.optionalsObject

An array for optional fields



54
55
56
57
58
59
60
61
62
63
64
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 54

def self.optionals
  %w[
    ip
    ip6
    netmask
    netmask6
    secondary_ips
    type
    type6
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



114
115
116
117
118
119
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 114

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} ip: #{@ip.inspect}, ip6: #{@ip6.inspect}, netmask: #{@netmask.inspect},"\
  " netmask6: #{@netmask6.inspect}, secondary_ips: #{@secondary_ips.inspect}, type:"\
  " #{@type.inspect}, type6: #{@type6.inspect}>"
end

#to_sObject

Provides a human-readable string representation of the object.



107
108
109
110
111
# File 'lib/mist_api/models/gateway_ip_config_property.rb', line 107

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} ip: #{@ip}, ip6: #{@ip6}, netmask: #{@netmask}, netmask6: #{@netmask6},"\
  " secondary_ips: #{@secondary_ips}, type: #{@type}, type6: #{@type6}>"
end