Class: OCI::StackMonitoring::Models::DefinedAlarmCondition
- Inherits:
-
Object
- Object
- OCI::StackMonitoring::Models::DefinedAlarmCondition
- Defined in:
- lib/oci/stack_monitoring/models/defined_alarm_condition.rb
Overview
Defined Alarm Condition.
Constant Summary collapse
- CONDITION_TYPE_ENUM =
[ CONDITION_TYPE_FIXED = 'FIXED'.freeze, CONDITION_TYPE_AVAILABILITY = 'AVAILABILITY'.freeze, CONDITION_TYPE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE'.freeze ].freeze
Instance Attribute Summary collapse
-
#condition_type ⇒ String
[Required] Type of defined monitoring template.
-
#conditions ⇒ Array<OCI::StackMonitoring::Models::Condition>
[Required] Monitoring template conditions.
-
#metric_name ⇒ String
[Required] The metric name.
Class Method Summary collapse
-
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
-
.swagger_types ⇒ Object
Attribute type mapping.
Instance Method Summary collapse
-
#==(other) ⇒ Object
Checks equality by comparing each attribute.
-
#build_from_hash(attributes) ⇒ Object
Builds the object from hash.
- #eql?(other) ⇒ Boolean
-
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
-
#initialize(attributes = {}) ⇒ DefinedAlarmCondition
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 = {}) ⇒ DefinedAlarmCondition
Initializes the object
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 61 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 } self.metric_name = attributes[:'metricName'] if attributes[:'metricName'] raise 'You cannot provide both :metricName and :metric_name' if attributes.key?(:'metricName') && attributes.key?(:'metric_name') self.metric_name = attributes[:'metric_name'] if attributes[:'metric_name'] self.condition_type = attributes[:'conditionType'] if attributes[:'conditionType'] raise 'You cannot provide both :conditionType and :condition_type' if attributes.key?(:'conditionType') && attributes.key?(:'condition_type') self.condition_type = attributes[:'condition_type'] if attributes[:'condition_type'] self.conditions = attributes[:'conditions'] if attributes[:'conditions'] end |
Instance Attribute Details
#condition_type ⇒ String
[Required] Type of defined monitoring template.
24 25 26 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 24 def condition_type @condition_type end |
#conditions ⇒ Array<OCI::StackMonitoring::Models::Condition>
[Required] Monitoring template conditions.
28 29 30 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 28 def conditions @conditions end |
#metric_name ⇒ String
[Required] The metric name.
20 21 22 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 20 def metric_name @metric_name end |
Class Method Details
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
31 32 33 34 35 36 37 38 39 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 31 def self.attribute_map { # rubocop:disable Style/SymbolLiteral 'metric_name': :'metricName', 'condition_type': :'conditionType', 'conditions': :'conditions' # rubocop:enable Style/SymbolLiteral } end |
.swagger_types ⇒ Object
Attribute type mapping.
42 43 44 45 46 47 48 49 50 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 42 def self.swagger_types { # rubocop:disable Style/SymbolLiteral 'metric_name': :'String', 'condition_type': :'String', 'conditions': :'Array<OCI::StackMonitoring::Models::Condition>' # rubocop:enable Style/SymbolLiteral } end |
Instance Method Details
#==(other) ⇒ Object
Checks equality by comparing each attribute.
102 103 104 105 106 107 108 109 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 102 def ==(other) return true if equal?(other) self.class == other.class && metric_name == other.metric_name && condition_type == other.condition_type && conditions == other.conditions end |
#build_from_hash(attributes) ⇒ Object
Builds the object from hash
134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 134 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) public_method("#{key}=").call( attributes[self.class.attribute_map[key]] .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) } ) end elsif !attributes[self.class.attribute_map[key]].nil? 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) ⇒ Boolean
114 115 116 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 114 def eql?(other) self == other end |
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
123 124 125 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 123 def hash [metric_name, condition_type, conditions].hash end |
#to_hash ⇒ Hash
Returns the object in the form of hash
167 168 169 170 171 172 173 174 175 176 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 167 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
161 162 163 |
# File 'lib/oci/stack_monitoring/models/defined_alarm_condition.rb', line 161 def to_s to_hash.to_s end |