Class: OCI::Core::Models::Vnic

Inherits:
Object
  • Object
show all
Defined in:
lib/oci/core/models/vnic.rb

Constant Summary collapse

LIFECYCLE_STATE_ENUM =
[LIFECYCLE_STATE_PROVISIONING = 'PROVISIONING',
LIFECYCLE_STATE_AVAILABLE = 'AVAILABLE',
LIFECYCLE_STATE_TERMINATING = 'TERMINATING',
LIFECYCLE_STATE_TERMINATED = 'TERMINATED',
LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ Vnic

Initializes the object

Parameters:

  • attributes (Hash) (defaults to: {})

    Model attributes in the form of hash



104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
# File 'lib/oci/core/models/vnic.rb', line 104

def initialize(attributes = {})
  return unless attributes.is_a?(Hash)

  # convert string to symbol for hash key
  attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}

  if attributes[:'availabilityDomain']
    self.availability_domain = attributes[:'availabilityDomain']
  end

  if attributes[:'compartmentId']
    self.compartment_id = attributes[:'compartmentId']
  end

  if attributes[:'displayName']
    self.display_name = attributes[:'displayName']
  end

  if attributes[:'hostnameLabel']
    self.hostname_label = attributes[:'hostnameLabel']
  end

  if attributes[:'id']
    self.id = attributes[:'id']
  end

  if attributes[:'isPrimary']
    self.is_primary = attributes[:'isPrimary']
  end

  if attributes[:'lifecycleState']
    self.lifecycle_state = attributes[:'lifecycleState']
  end

  if attributes[:'macAddress']
    self.mac_address = attributes[:'macAddress']
  end

  if attributes[:'privateIp']
    self.private_ip = attributes[:'privateIp']
  end

  if attributes[:'publicIp']
    self.public_ip = attributes[:'publicIp']
  end

  if attributes[:'skipSourceDestCheck']
    self.skip_source_dest_check = attributes[:'skipSourceDestCheck']
  end

  if attributes[:'subnetId']
    self.subnet_id = attributes[:'subnetId']
  end

  if attributes[:'timeCreated']
    self.time_created = attributes[:'timeCreated']
  end

end

Instance Attribute Details

#availability_domainString

The VNIC’s Availability Domain.

Example: ‘Uocm:PHX-AD-1`

Returns:

  • (String)


19
20
21
# File 'lib/oci/core/models/vnic.rb', line 19

def availability_domain
  @availability_domain
end

#compartment_idString

The OCID of the compartment containing the VNIC.

Returns:

  • (String)


23
24
25
# File 'lib/oci/core/models/vnic.rb', line 23

def compartment_id
  @compartment_id
end

#display_nameString

A user-friendly name. Does not have to be unique. Avoid entering confidential information.

Returns:

  • (String)


29
30
31
# File 'lib/oci/core/models/vnic.rb', line 29

def display_name
  @display_name
end

#hostname_labelString

The hostname for the VNIC’s primary private IP. Used for DNS. The value is the hostname portion of the primary private IP’s fully qualified domain name (FQDN) (for example, ‘bminstance-1` in FQDN `bminstance-1.subnet123.vcn1.oraclevcn.com`). Must be unique across all VNICs in the subnet and comply with [RFC 952](tools.ietf.org/html/rfc952) and [RFC 1123](tools.ietf.org/html/rfc1123).

For more information, see [DNS in Your Virtual Cloud Network](docs.us-phoenix-1.oraclecloud.com/Content/Network/Concepts/dns.htm).

Example: ‘bminstance-1`

Returns:

  • (String)


44
45
46
# File 'lib/oci/core/models/vnic.rb', line 44

def hostname_label
  @hostname_label
end

#idString

The OCID of the VNIC.

Returns:

  • (String)


48
49
50
# File 'lib/oci/core/models/vnic.rb', line 48

def id
  @id
end

#is_primaryBOOLEAN

Whether the VNIC is the primary VNIC (the VNIC that is automatically created and attached during instance launch).

Returns:

  • (BOOLEAN)


54
55
56
# File 'lib/oci/core/models/vnic.rb', line 54

def is_primary
  @is_primary
end

#lifecycle_stateString

The current state of the VNIC.

Returns:

  • (String)


58
59
60
# File 'lib/oci/core/models/vnic.rb', line 58

def lifecycle_state
  @lifecycle_state
end

#mac_addressString

The MAC address of the VNIC.

Example: ‘00:00:17:B6:4D:DD`

Returns:

  • (String)


65
66
67
# File 'lib/oci/core/models/vnic.rb', line 65

def mac_address
  @mac_address
end

#private_ipString

The private IP address of the primary ‘privateIp` object on the VNIC. The address is within the CIDR of the VNIC’s subnet.

Example: ‘10.0.3.3`

Returns:

  • (String)


73
74
75
# File 'lib/oci/core/models/vnic.rb', line 73

def private_ip
  @private_ip
end

#public_ipString

The public IP address of the VNIC, if one is assigned.

Returns:

  • (String)


78
79
80
# File 'lib/oci/core/models/vnic.rb', line 78

def public_ip
  @public_ip
end

#skip_source_dest_checkBOOLEAN

Whether the source/destination check is disabled on the VNIC. Defaults to ‘false`, which means the check is performed. For information about why you would skip the source/destination check, see [Using a Private IP as a Route Target](docs.us-phoenix-1.oraclecloud.com/Content/Network/Tasks/managingroutetables.htm#privateip).

Example: ‘true`

Returns:

  • (BOOLEAN)


88
89
90
# File 'lib/oci/core/models/vnic.rb', line 88

def skip_source_dest_check
  @skip_source_dest_check
end

#subnet_idString

The OCID of the subnet the VNIC is in.

Returns:

  • (String)


92
93
94
# File 'lib/oci/core/models/vnic.rb', line 92

def subnet_id
  @subnet_id
end

#time_createdDateTime

The date and time the VNIC was created, in the format defined by RFC3339.

Example: ‘2016-08-25T21:10:29.600Z`

Returns:

  • (DateTime)


99
100
101
# File 'lib/oci/core/models/vnic.rb', line 99

def time_created
  @time_created
end

Instance Method Details

#==(other_object) ⇒ Object

Checks equality by comparing each attribute.

Parameters:

  • other_object (Object)

    to be compared



176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
# File 'lib/oci/core/models/vnic.rb', line 176

def ==(other_object)
  return true if self.equal?(other_object)
  self.class == other_object.class &&
      availability_domain == other_object.availability_domain &&
      compartment_id == other_object.compartment_id &&
      display_name == other_object.display_name &&
      hostname_label == other_object.hostname_label &&
      id == other_object.id &&
      is_primary == other_object.is_primary &&
      lifecycle_state == other_object.lifecycle_state &&
      mac_address == other_object.mac_address &&
      private_ip == other_object.private_ip &&
      public_ip == other_object.public_ip &&
      skip_source_dest_check == other_object.skip_source_dest_check &&
      subnet_id == other_object.subnet_id &&
      time_created == other_object.time_created
end

#build_from_hash(attributes) ⇒ Object

Builds the object from hash

Parameters:

  • attributes (Hash)

    Model attributes in the form of hash

Returns:

  • (Object)

    Returns the model itself



209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
# File 'lib/oci/core/models/vnic.rb', line 209

def build_from_hash(attributes)
  return nil unless attributes.is_a?(Hash)
  self.class.swagger_types.each_pair do |key, type|
    if type =~ /^Array<(.*)>/i
      # check to ensure the input is an array given that the the attribute
      # is documented as an array but the input is not
      if attributes[self.class.attribute_map[key]].is_a?(Array)
        self.public_send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
      end
    elsif !attributes[self.class.attribute_map[key]].nil?
      self.public_send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
    end # or else data not found in attributes(hash), not an issue as the data can be optional
  end

  self
end

#eql?(other_object) ⇒ Boolean

Parameters:

  • other_object (Object)

    to be compared

Returns:

  • (Boolean)

See Also:

  • `==` method


196
197
198
# File 'lib/oci/core/models/vnic.rb', line 196

def eql?(other_object)
  self == other_object
end

#hashFixnum

Calculates hash code according to all attributes.

Returns:

  • (Fixnum)

    Hash code



202
203
204
# File 'lib/oci/core/models/vnic.rb', line 202

def hash
  [availability_domain, compartment_id, display_name, hostname_label, id, is_primary, lifecycle_state, mac_address, private_ip, public_ip, skip_source_dest_check, subnet_id, time_created].hash
end

#to_hashHash

Returns the object in the form of hash

Returns:

  • (Hash)

    Returns the object in the form of hash



234
235
236
237
238
239
240
241
242
# File 'lib/oci/core/models/vnic.rb', line 234

def to_hash
  hash = {}
  self.class.attribute_map.each_pair do |attr, param|
    value = public_send(attr)
    next if value.nil? && !instance_variable_defined?("@#{attr}")
    hash[param] = _to_hash(value)
  end
  hash
end

#to_sString

Returns the string representation of the object

Returns:

  • (String)

    String presentation of the object



228
229
230
# File 'lib/oci/core/models/vnic.rb', line 228

def to_s
  to_hash.to_s
end