Class: OCI::Events::Models::CreateRuleDetails
- Inherits:
-
Object
- Object
- OCI::Events::Models::CreateRuleDetails
- Defined in:
- lib/oci/events/models/create_rule_details.rb
Overview
Object used to create a rule.
Instance Attribute Summary collapse
-
#actions ⇒ OCI::Events::Models::ActionDetailsList
This attribute is required.
-
#compartment_id ⇒ String
[Required] The [OCID](docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment to which this rule belongs.
-
#condition ⇒ String
[Required] A filter that specifies the event that will trigger actions associated with this rule.
-
#defined_tags ⇒ Hash<String, Hash<String, Object>>
Defined tags for this resource.
-
#description ⇒ String
A string that describes the details of the rule.
-
#display_name ⇒ String
[Required] A string that describes the rule.
-
#freeform_tags ⇒ Hash<String, String>
Free-form tags for this resource.
-
#is_enabled ⇒ BOOLEAN
[Required] Whether or not this rule is currently enabled.
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 = {}) ⇒ CreateRuleDetails
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 = {}) ⇒ CreateRuleDetails
Initializes the object
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 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/oci/events/models/create_rule_details.rb', line 130 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.display_name = attributes[:'displayName'] if attributes[:'displayName'] raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name') self.display_name = attributes[:'display_name'] if attributes[:'display_name'] self.description = attributes[:'description'] if attributes[:'description'] self.is_enabled = attributes[:'isEnabled'] unless attributes[:'isEnabled'].nil? self.is_enabled = true if is_enabled.nil? && !attributes.key?(:'isEnabled') # rubocop:disable Style/StringLiterals raise 'You cannot provide both :isEnabled and :is_enabled' if attributes.key?(:'isEnabled') && attributes.key?(:'is_enabled') self.is_enabled = attributes[:'is_enabled'] unless attributes[:'is_enabled'].nil? self.is_enabled = true if is_enabled.nil? && !attributes.key?(:'isEnabled') && !attributes.key?(:'is_enabled') # rubocop:disable Style/StringLiterals self.condition = attributes[:'condition'] if attributes[:'condition'] self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId'] raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id') self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id'] self.actions = attributes[:'actions'] if attributes[:'actions'] self. = attributes[:'freeformTags'] if attributes[:'freeformTags'] raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags') self. = attributes[:'freeform_tags'] if attributes[:'freeform_tags'] self. = attributes[:'definedTags'] if attributes[:'definedTags'] raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags') self. = attributes[:'defined_tags'] if attributes[:'defined_tags'] end |
Instance Attribute Details
#actions ⇒ OCI::Events::Models::ActionDetailsList
This attribute is required.
67 68 69 |
# File 'lib/oci/events/models/create_rule_details.rb', line 67 def actions @actions end |
#compartment_id ⇒ String
[Required] The [OCID](docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment to which this rule belongs.
63 64 65 |
# File 'lib/oci/events/models/create_rule_details.rb', line 63 def compartment_id @compartment_id end |
#condition ⇒ String
[Required] A filter that specifies the event that will trigger actions associated with this rule. A few important things to remember about filters:
-
Fields not mentioned in the condition are ignored. You can create a valid filter that matches
all events with two curly brackets: ‘{}`
For more examples, see
[Matching Events with Filters](docs.cloud.oracle.com/iaas/Content/Events/Concepts/filterevents.htm).
-
For a condition with fileds to match an event, the event must contain all the field names
listed in the condition. Field names must appear in the condition with the same nesting structure used in the event.
For a list of reference events, see
[Services that Produce Events](docs.cloud.oracle.com/iaas/Content/Events/Reference/eventsproducers.htm).
-
Rules apply to events in the compartment in which you create them and any child compartments.
This means that a condition specified by a rule only matches events emitted from resources in the compartment or any of its child compartments.
-
The condition is a string value in a JSON object, but numbers in conditions are converted
from strings to numbers before they are evaluated for matches. This means that 100, 100.0 or 1.0e2 are all considered equal.
-
Boolean values are converted to numbers and then evaluated. This means true and True are
considered equal, as are False and false.
-
Wildcard matching is supported with the asterisk (*) character.
For examples of wildcard matching, see
[Matching Events with Filters](docs.cloud.oracle.com/iaas/Content/Events/Concepts/filterevents.htm)
Example: ‘\"eventType\": \"com.oraclecloud.databaseservice.autonomous.database.backup.end\"`
58 59 60 |
# File 'lib/oci/events/models/create_rule_details.rb', line 58 def condition @condition end |
#defined_tags ⇒ Hash<String, Hash<String, Object>>
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
Example: ‘{"CostCenter": "42"}`
82 83 84 |
# File 'lib/oci/events/models/create_rule_details.rb', line 82 def @defined_tags end |
#description ⇒ String
A string that describes the details of the rule. It does not have to be unique, and you can change it. Avoid entering confidential information.
19 20 21 |
# File 'lib/oci/events/models/create_rule_details.rb', line 19 def description @description end |
#display_name ⇒ String
[Required] A string that describes the rule. It does not have to be unique, and you can change it. Avoid entering confidential information.
13 14 15 |
# File 'lib/oci/events/models/create_rule_details.rb', line 13 def display_name @display_name end |
#freeform_tags ⇒ Hash<String, String>
Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. Exists for cross-compatibility only. For more information, see [Resource Tags](docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
Example: ‘"Finance"`
75 76 77 |
# File 'lib/oci/events/models/create_rule_details.rb', line 75 def @freeform_tags end |
#is_enabled ⇒ BOOLEAN
[Required] Whether or not this rule is currently enabled.
Example: ‘true`
26 27 28 |
# File 'lib/oci/events/models/create_rule_details.rb', line 26 def is_enabled @is_enabled end |
Class Method Details
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/oci/events/models/create_rule_details.rb', line 85 def self.attribute_map { # rubocop:disable Style/SymbolLiteral 'display_name': :'displayName', 'description': :'description', 'is_enabled': :'isEnabled', 'condition': :'condition', 'compartment_id': :'compartmentId', 'actions': :'actions', 'freeform_tags': :'freeformTags', 'defined_tags': :'definedTags' # rubocop:enable Style/SymbolLiteral } end |
.swagger_types ⇒ Object
Attribute type mapping.
101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
# File 'lib/oci/events/models/create_rule_details.rb', line 101 def self.swagger_types { # rubocop:disable Style/SymbolLiteral 'display_name': :'String', 'description': :'String', 'is_enabled': :'BOOLEAN', 'condition': :'String', 'compartment_id': :'String', 'actions': :'OCI::Events::Models::ActionDetailsList', 'freeform_tags': :'Hash<String, String>', 'defined_tags': :'Hash<String, Hash<String, Object>>' # rubocop:enable Style/SymbolLiteral } end |
Instance Method Details
#==(other) ⇒ Object
Checks equality by comparing each attribute.
182 183 184 185 186 187 188 189 190 191 192 193 194 |
# File 'lib/oci/events/models/create_rule_details.rb', line 182 def ==(other) return true if equal?(other) self.class == other.class && display_name == other.display_name && description == other.description && is_enabled == other.is_enabled && condition == other.condition && compartment_id == other.compartment_id && actions == other.actions && == other. && == other. end |
#build_from_hash(attributes) ⇒ Object
Builds the object from hash
219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 |
# File 'lib/oci/events/models/create_rule_details.rb', line 219 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
199 200 201 |
# File 'lib/oci/events/models/create_rule_details.rb', line 199 def eql?(other) self == other end |
#hash ⇒ Fixnum
Calculates hash code according to all attributes.
208 209 210 |
# File 'lib/oci/events/models/create_rule_details.rb', line 208 def hash [display_name, description, is_enabled, condition, compartment_id, actions, , ].hash end |
#to_hash ⇒ Hash
Returns the object in the form of hash
252 253 254 255 256 257 258 259 260 261 |
# File 'lib/oci/events/models/create_rule_details.rb', line 252 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
246 247 248 |
# File 'lib/oci/events/models/create_rule_details.rb', line 246 def to_s to_hash.to_s end |