Class: MistApi::Vpn
- Defined in:
- lib/mist_api/models/vpn.rb
Overview
Vpn Model.
Instance Attribute Summary collapse
-
#created_time ⇒ Float
When the object has been created, in epoch.
-
#id ⇒ UUID | String
Unique ID of the object instance in the Mist Organization.
-
#modified_time ⇒ Float
When the object has been modified for the last time, in epoch.
-
#name ⇒ String
When the object has been modified for the last time, in epoch.
-
#org_id ⇒ UUID | String
When the object has been modified for the last time, in epoch.
-
#path_selection ⇒ VpnPathSelection
Only if ‘type`==`hub_spoke`.
-
#paths ⇒ Hash[String, VpnPath]
For ‘type`==`hub_spoke`, Property key is the VPN name.
-
#type ⇒ VpnModeEnum
enum: ‘hub_spoke`, `mesh`.
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
Instance Method Summary collapse
-
#initialize(name = nil, paths = nil, created_time = SKIP, id = SKIP, modified_time = SKIP, org_id = SKIP, path_selection = SKIP, type = VpnModeEnum::HUB_SPOKE, additional_properties = nil) ⇒ Vpn
constructor
A new instance of Vpn.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(name = nil, paths = nil, created_time = SKIP, id = SKIP, modified_time = SKIP, org_id = SKIP, path_selection = SKIP, type = VpnModeEnum::HUB_SPOKE, additional_properties = nil) ⇒ Vpn
Returns a new instance of Vpn.
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
# File 'lib/mist_api/models/vpn.rb', line 76 def initialize(name = nil, paths = nil, created_time = SKIP, id = SKIP, modified_time = SKIP, org_id = SKIP, path_selection = SKIP, type = VpnModeEnum::HUB_SPOKE, additional_properties = nil) # Add additional model properties to the instance additional_properties = {} if additional_properties.nil? @created_time = created_time unless created_time == SKIP @id = id unless id == SKIP @modified_time = modified_time unless modified_time == SKIP @name = name @org_id = org_id unless org_id == SKIP @path_selection = path_selection unless path_selection == SKIP @paths = paths @type = type unless type == SKIP @additional_properties = additional_properties end |
Instance Attribute Details
#created_time ⇒ Float
When the object has been created, in epoch
14 15 16 |
# File 'lib/mist_api/models/vpn.rb', line 14 def created_time @created_time end |
#id ⇒ UUID | String
Unique ID of the object instance in the Mist Organization
18 19 20 |
# File 'lib/mist_api/models/vpn.rb', line 18 def id @id end |
#modified_time ⇒ Float
When the object has been modified for the last time, in epoch
22 23 24 |
# File 'lib/mist_api/models/vpn.rb', line 22 def modified_time @modified_time end |
#name ⇒ String
When the object has been modified for the last time, in epoch
26 27 28 |
# File 'lib/mist_api/models/vpn.rb', line 26 def name @name end |
#org_id ⇒ UUID | String
When the object has been modified for the last time, in epoch
30 31 32 |
# File 'lib/mist_api/models/vpn.rb', line 30 def org_id @org_id end |
#path_selection ⇒ VpnPathSelection
Only if ‘type`==`hub_spoke`
34 35 36 |
# File 'lib/mist_api/models/vpn.rb', line 34 def path_selection @path_selection end |
#paths ⇒ Hash[String, VpnPath]
For ‘type`==`hub_spoke`, Property key is the VPN name. For `type`==`mesh`, Property key is the Interface name
39 40 41 |
# File 'lib/mist_api/models/vpn.rb', line 39 def paths @paths end |
#type ⇒ VpnModeEnum
enum: ‘hub_spoke`, `mesh`
43 44 45 |
# File 'lib/mist_api/models/vpn.rb', line 43 def type @type end |
Class Method Details
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
# File 'lib/mist_api/models/vpn.rb', line 94 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. name = hash.key?('name') ? hash['name'] : nil paths = VpnPath.from_hash(hash['paths']) if hash['paths'] paths = nil unless hash.key?('paths') created_time = hash.key?('created_time') ? hash['created_time'] : SKIP id = hash.key?('id') ? hash['id'] : SKIP modified_time = hash.key?('modified_time') ? hash['modified_time'] : SKIP org_id = hash.key?('org_id') ? hash['org_id'] : SKIP path_selection = VpnPathSelection.from_hash(hash['path_selection']) if hash['path_selection'] type = hash['type'] ||= VpnModeEnum::HUB_SPOKE # Create a new hash for additional properties, removing known properties. new_hash = hash.reject { |k, _| names.value?(k) } additional_properties = APIHelper.get_additional_properties( new_hash, proc { |value| value } ) # Create object from extracted values. Vpn.new(name, paths, created_time, id, modified_time, org_id, path_selection, type, additional_properties) end |
.names ⇒ Object
A mapping from model property names to API property names.
46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/mist_api/models/vpn.rb', line 46 def self.names @_hash = {} if @_hash.nil? @_hash['created_time'] = 'created_time' @_hash['id'] = 'id' @_hash['modified_time'] = 'modified_time' @_hash['name'] = 'name' @_hash['org_id'] = 'org_id' @_hash['path_selection'] = 'path_selection' @_hash['paths'] = 'paths' @_hash['type'] = 'type' @_hash end |
.nullables ⇒ Object
An array for nullable fields
72 73 74 |
# File 'lib/mist_api/models/vpn.rb', line 72 def self.nullables [] end |
.optionals ⇒ Object
An array for optional fields
60 61 62 63 64 65 66 67 68 69 |
# File 'lib/mist_api/models/vpn.rb', line 60 def self.optionals %w[ created_time id modified_time org_id path_selection type ] end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
138 139 140 141 142 143 144 |
# File 'lib/mist_api/models/vpn.rb', line 138 def inspect class_name = self.class.name.split('::').last "<#{class_name} created_time: #{@created_time.inspect}, id: #{@id.inspect}, modified_time:"\ " #{@modified_time.inspect}, name: #{@name.inspect}, org_id: #{@org_id.inspect},"\ " path_selection: #{@path_selection.inspect}, paths: #{@paths.inspect}, type:"\ " #{@type.inspect}, additional_properties: #{@additional_properties}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
130 131 132 133 134 135 |
# File 'lib/mist_api/models/vpn.rb', line 130 def to_s class_name = self.class.name.split('::').last "<#{class_name} created_time: #{@created_time}, id: #{@id}, modified_time:"\ " #{@modified_time}, name: #{@name}, org_id: #{@org_id}, path_selection: #{@path_selection},"\ " paths: #{@paths}, type: #{@type}, additional_properties: #{@additional_properties}>" end |