Class: OCI::Core::Models::AttachVolumeDetails
- Inherits:
-
Object
- Object
- OCI::Core::Models::AttachVolumeDetails
- Defined in:
- lib/oci/core/models/attach_volume_details.rb
Overview
This class has direct subclasses. If you are using this class as input to a service operations then you should favor using a subclass over the base class
Direct Known Subclasses
AttachIScsiVolumeDetails, AttachParavirtualizedVolumeDetails
Instance Attribute Summary collapse
-
#display_name ⇒ String
A user-friendly name.
-
#instance_id ⇒ String
[Required] The OCID of the instance.
-
#is_read_only ⇒ BOOLEAN
Whether the attachment was created in read-only mode.
-
#type ⇒ String
[Required] The type of volume.
-
#volume_id ⇒ String
[Required] The OCID of the volume.
Class Method Summary collapse
-
.get_subtype(object_hash) ⇒ Object
Given the hash representation of a subtype of this class, use the info in the hash to return the class of the subtype.
Instance Method Summary collapse
-
#==(other_object) ⇒ Object
Checks equality by comparing each attribute.
-
#build_from_hash(attributes) ⇒ Object
Builds the object from hash.
- #eql?(other_object) ⇒ Boolean
-
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
-
#initialize(attributes = {}) ⇒ AttachVolumeDetails
constructor
Initializes the object.
-
#to_hash ⇒ Hash
Returns the object in the form of hash.
-
#to_s ⇒ String
Returns the string representation of the object.
Constructor Details
#initialize(attributes = {}) ⇒ AttachVolumeDetails
Initializes the object
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 49 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[:'displayName'] self.display_name = attributes[:'displayName'] end raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name') if attributes[:'display_name'] self.display_name = attributes[:'display_name'] end if attributes[:'instanceId'] self.instance_id = attributes[:'instanceId'] end raise 'You cannot provide both :instanceId and :instance_id' if attributes.key?(:'instanceId') && attributes.key?(:'instance_id') if attributes[:'instance_id'] self.instance_id = attributes[:'instance_id'] end unless attributes[:'isReadOnly'].nil? self.is_read_only = attributes[:'isReadOnly'] end raise 'You cannot provide both :isReadOnly and :is_read_only' if attributes.key?(:'isReadOnly') && attributes.key?(:'is_read_only') unless attributes[:'is_read_only'].nil? self.is_read_only = attributes[:'is_read_only'] end if attributes[:'type'] self.type = attributes[:'type'] end if attributes[:'volumeId'] self.volume_id = attributes[:'volumeId'] end raise 'You cannot provide both :volumeId and :volume_id' if attributes.key?(:'volumeId') && attributes.key?(:'volume_id') if attributes[:'volume_id'] self.volume_id = attributes[:'volume_id'] end end |
Instance Attribute Details
#display_name ⇒ String
A user-friendly name. Does not have to be unique, and it cannot be changed. Avoid entering confidential information.
11 12 13 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 11 def display_name @display_name end |
#instance_id ⇒ String
[Required] The OCID of the instance.
15 16 17 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 15 def instance_id @instance_id end |
#is_read_only ⇒ BOOLEAN
Whether the attachment was created in read-only mode.
19 20 21 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 19 def is_read_only @is_read_only end |
#type ⇒ String
[Required] The type of volume. The only supported value are "iscsi" and "paravirtualized".
23 24 25 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 23 def type @type end |
#volume_id ⇒ String
[Required] The OCID of the volume.
27 28 29 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 27 def volume_id @volume_id end |
Class Method Details
.get_subtype(object_hash) ⇒ Object
Given the hash representation of a subtype of this class, use the info in the hash to return the class of the subtype.
32 33 34 35 36 37 38 39 40 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 32 def self.get_subtype(object_hash) type = object_hash[:'type'] return 'OCI::Core::Models::AttachIScsiVolumeDetails' if type == 'iscsi' return 'OCI::Core::Models::AttachParavirtualizedVolumeDetails' if type == 'paravirtualized' # TODO: Log a warning when the subtype is not found. return 'OCI::Core::Models::AttachVolumeDetails' end |
Instance Method Details
#==(other_object) ⇒ Object
Checks equality by comparing each attribute.
103 104 105 106 107 108 109 110 111 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 103 def ==(other_object) return true if self.equal?(other_object) self.class == other_object.class && display_name == other_object.display_name && instance_id == other_object.instance_id && is_read_only == other_object.is_read_only && type == other_object.type && volume_id == other_object.volume_id end |
#build_from_hash(attributes) ⇒ Object
Builds the object from hash
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 128 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_method("#{key}=").call(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_method("#{key}=").call(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
115 116 117 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 115 def eql?(other_object) self == other_object end |
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
121 122 123 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 121 def hash [display_name, instance_id, is_read_only, type, volume_id].hash end |
#to_hash ⇒ Hash
Returns the object in the form of hash
153 154 155 156 157 158 159 160 161 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 153 def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = public_method(attr).call next if value.nil? && !instance_variable_defined?("@#{attr}") hash[param] = _to_hash(value) end hash end |
#to_s ⇒ String
Returns the string representation of the object
147 148 149 |
# File 'lib/oci/core/models/attach_volume_details.rb', line 147 def to_s to_hash.to_s end |