Class: Kubevirt::K8sIoApiCoreV1PreferredSchedulingTerm
- Inherits:
-
ApiModelBase
- Object
- ApiModelBase
- Kubevirt::K8sIoApiCoreV1PreferredSchedulingTerm
- Defined in:
- lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb
Overview
An empty preferred scheduling term matches all objects with implicit weight 0 (i.e. it’s a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
Instance Attribute Summary collapse
-
#preference ⇒ Object
Returns the value of attribute preference.
-
#weight ⇒ Object
Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
Class Method Summary collapse
-
.acceptable_attribute_map ⇒ Object
Returns attribute mapping this model knows about.
-
.acceptable_attributes ⇒ Object
Returns all the JSON keys this model knows about.
-
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
-
.build_from_hash(attributes) ⇒ Object
Builds the object from hash.
-
.openapi_nullable ⇒ Object
List of attributes with nullable: true.
-
.openapi_types ⇒ Object
Attribute type mapping.
Instance Method Summary collapse
-
#==(o) ⇒ Object
Checks equality by comparing each attribute.
- #eql?(o) ⇒ Boolean
-
#hash ⇒ Integer
Calculates hash code according to all attributes.
-
#initialize(attributes = {}) ⇒ K8sIoApiCoreV1PreferredSchedulingTerm
constructor
Initializes the object.
-
#list_invalid_properties ⇒ Object
Show invalid properties with the reasons.
-
#to_hash ⇒ Hash
Returns the object in the form of hash.
-
#valid? ⇒ Boolean
Check to see if the all the properties in the model are valid.
Methods inherited from ApiModelBase
_deserialize, #_to_hash, #to_body, #to_s
Constructor Details
#initialize(attributes = {}) ⇒ K8sIoApiCoreV1PreferredSchedulingTerm
Initializes the object
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 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 58 def initialize(attributes = {}) if (!attributes.is_a?(Hash)) fail ArgumentError, "The input argument (attributes) must be a hash in `Kubevirt::K8sIoApiCoreV1PreferredSchedulingTerm` initialize method" end # check to see if the attribute exists and convert string to symbol for hash key acceptable_attribute_map = self.class.acceptable_attribute_map attributes = attributes.each_with_object({}) { |(k, v), h| if (!acceptable_attribute_map.key?(k.to_sym)) fail ArgumentError, "`#{k}` is not a valid attribute in `Kubevirt::K8sIoApiCoreV1PreferredSchedulingTerm`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect end h[k.to_sym] = v } if attributes.key?(:'preference') self.preference = attributes[:'preference'] else self.preference = nil end if attributes.key?(:'weight') self.weight = attributes[:'weight'] else self.weight = 0 end end |
Instance Attribute Details
#preference ⇒ Object
Returns the value of attribute preference.
19 20 21 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 19 def preference @preference end |
#weight ⇒ Object
Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
22 23 24 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 22 def weight @weight end |
Class Method Details
.acceptable_attribute_map ⇒ Object
Returns attribute mapping this model knows about
33 34 35 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 33 def self.acceptable_attribute_map attribute_map end |
.acceptable_attributes ⇒ Object
Returns all the JSON keys this model knows about
38 39 40 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 38 def self.acceptable_attributes acceptable_attribute_map.values end |
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
25 26 27 28 29 30 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 25 def self.attribute_map { :'preference' => :'preference', :'weight' => :'weight' } end |
.build_from_hash(attributes) ⇒ Object
Builds the object from hash
154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 154 def self.build_from_hash(attributes) return nil unless attributes.is_a?(Hash) attributes = attributes.transform_keys(&:to_sym) transformed_hash = {} openapi_types.each_pair do |key, type| if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil? transformed_hash["#{key}"] = nil elsif type =~ /\AArray<(.*)>/i # check to ensure the input is an array given that the attribute # is documented as an array but the input is not if attributes[attribute_map[key]].is_a?(Array) transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) } end elsif !attributes[attribute_map[key]].nil? transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]]) end end new(transformed_hash) end |
.openapi_nullable ⇒ Object
List of attributes with nullable: true
51 52 53 54 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 51 def self.openapi_nullable Set.new([ ]) end |
.openapi_types ⇒ Object
Attribute type mapping.
43 44 45 46 47 48 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 43 def self.openapi_types { :'preference' => :'K8sIoApiCoreV1NodeSelectorTerm', :'weight' => :'Integer' } end |
Instance Method Details
#==(o) ⇒ Object
Checks equality by comparing each attribute.
132 133 134 135 136 137 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 132 def ==(o) return true if self.equal?(o) self.class == o.class && preference == o.preference && weight == o.weight end |
#eql?(o) ⇒ Boolean
141 142 143 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 141 def eql?(o) self == o end |
#hash ⇒ Integer
Calculates hash code according to all attributes.
147 148 149 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 147 def hash [preference, weight].hash end |
#list_invalid_properties ⇒ Object
Show invalid properties with the reasons. Usually used together with valid?
87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 87 def list_invalid_properties warn '[DEPRECATED] the `list_invalid_properties` method is obsolete' invalid_properties = Array.new if @preference.nil? invalid_properties.push('invalid value for "preference", preference cannot be nil.') end if @weight.nil? invalid_properties.push('invalid value for "weight", weight cannot be nil.') end invalid_properties end |
#to_hash ⇒ Hash
Returns the object in the form of hash
176 177 178 179 180 181 182 183 184 185 186 187 188 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 176 def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = self.send(attr) if value.nil? is_nullable = self.class.openapi_nullable.include?(attr) next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) end hash[param] = _to_hash(value) end hash end |
#valid? ⇒ Boolean
Check to see if the all the properties in the model are valid
103 104 105 106 107 108 |
# File 'lib/kubevirt/models/k8s_io_api_core_v1_preferred_scheduling_term.rb', line 103 def valid? warn '[DEPRECATED] the `valid?` method is obsolete' return false if @preference.nil? return false if @weight.nil? true end |