Class: Verizon::DataTrigger1
- Defined in:
- lib/verizon/models/data_trigger1.rb
Overview
DataTrigger1 Model.
Instance Attribute Summary collapse
-
#action ⇒ AccountLevelAction
The action taken when trigger conditions are met.
-
#allowance_threshold ⇒ AllowanceThreshold
The interval to monitor for the threshold.
-
#comparitor ⇒ Comparitor
The boolean of the comparison.
-
#condition ⇒ Object
TODO: Write general description for this method.
-
#condition_type ⇒ ConditionType
The condition type being monitored.
-
#cycle_type ⇒ RulesCycleType
The interval to monitor for the threshold.
-
#filter_criteria ⇒ AccountLevelFilter
TODO: Write general description for this method.
-
#threshold ⇒ Integer
The threshold value the trigger monitors for.
-
#threshold_unit ⇒ ThresholdUnit
The units of the threshold.
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
-
.validate(value) ⇒ Object
Validates an instance of the object from a given value.
Instance Method Summary collapse
-
#initialize(filter_criteria: SKIP, condition: SKIP, action: SKIP, condition_type: SKIP, comparitor: SKIP, threshold: SKIP, threshold_unit: SKIP, cycle_type: SKIP, allowance_threshold: SKIP, additional_properties: nil) ⇒ DataTrigger1
constructor
A new instance of DataTrigger1.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(filter_criteria: SKIP, condition: SKIP, action: SKIP, condition_type: SKIP, comparitor: SKIP, threshold: SKIP, threshold_unit: SKIP, cycle_type: SKIP, allowance_threshold: SKIP, additional_properties: nil) ⇒ DataTrigger1
Returns a new instance of DataTrigger1.
87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
# File 'lib/verizon/models/data_trigger1.rb', line 87 def initialize(filter_criteria: SKIP, condition: SKIP, action: SKIP, condition_type: SKIP, comparitor: SKIP, threshold: SKIP, threshold_unit: SKIP, cycle_type: SKIP, allowance_threshold: SKIP, additional_properties: nil) # Add additional model properties to the instance additional_properties = {} if additional_properties.nil? @filter_criteria = filter_criteria unless filter_criteria == SKIP @condition = condition unless condition == SKIP @action = action unless action == SKIP @condition_type = condition_type unless condition_type == SKIP @comparitor = comparitor unless comparitor == SKIP @threshold = threshold unless threshold == SKIP @threshold_unit = threshold_unit unless threshold_unit == SKIP @cycle_type = cycle_type unless cycle_type == SKIP @allowance_threshold = allowance_threshold unless allowance_threshold == SKIP @additional_properties = additional_properties end |
Instance Attribute Details
#action ⇒ AccountLevelAction
The action taken when trigger conditions are met
22 23 24 |
# File 'lib/verizon/models/data_trigger1.rb', line 22 def action @action end |
#allowance_threshold ⇒ AllowanceThreshold
The interval to monitor for the threshold. This can be Daily, Weekly or Monthly
50 51 52 |
# File 'lib/verizon/models/data_trigger1.rb', line 50 def allowance_threshold @allowance_threshold end |
#comparitor ⇒ Comparitor
The boolean of the comparison. ‘gt` is Greater Than, `lt` is Less Than and `eq` is Equal To
31 32 33 |
# File 'lib/verizon/models/data_trigger1.rb', line 31 def comparitor @comparitor end |
#condition ⇒ Object
TODO: Write general description for this method
18 19 20 |
# File 'lib/verizon/models/data_trigger1.rb', line 18 def condition @condition end |
#condition_type ⇒ ConditionType
The condition type being monitored
26 27 28 |
# File 'lib/verizon/models/data_trigger1.rb', line 26 def condition_type @condition_type end |
#cycle_type ⇒ RulesCycleType
The interval to monitor for the threshold. This can be Daily, Weekly or Monthly
45 46 47 |
# File 'lib/verizon/models/data_trigger1.rb', line 45 def cycle_type @cycle_type end |
#filter_criteria ⇒ AccountLevelFilter
TODO: Write general description for this method
14 15 16 |
# File 'lib/verizon/models/data_trigger1.rb', line 14 def filter_criteria @filter_criteria end |
#threshold ⇒ Integer
The threshold value the trigger monitors for
35 36 37 |
# File 'lib/verizon/models/data_trigger1.rb', line 35 def threshold @threshold end |
#threshold_unit ⇒ ThresholdUnit
The units of the threshold. This can be KB, Kilobits, MB, Megabits, or GB, Gigabits
40 41 42 |
# File 'lib/verizon/models/data_trigger1.rb', line 40 def threshold_unit @threshold_unit end |
Class Method Details
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
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 |
# File 'lib/verizon/models/data_trigger1.rb', line 107 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. filter_criteria = AccountLevelFilter.from_hash(hash['filterCriteria']) if hash['filterCriteria'] condition = hash.key?('condition') ? APIHelper.deserialize_union_type( UnionTypeLookUp.get(:DataTrigger1Condition), hash['condition'] ) : SKIP action = hash.key?('action') ? hash['action'] : SKIP condition_type = hash.key?('conditionType') ? hash['conditionType'] : SKIP comparitor = hash.key?('comparitor') ? hash['comparitor'] : SKIP threshold = hash.key?('threshold') ? hash['threshold'] : SKIP threshold_unit = hash.key?('thresholdUnit') ? hash['thresholdUnit'] : SKIP cycle_type = hash.key?('cycleType') ? hash['cycleType'] : SKIP allowance_threshold = AllowanceThreshold.from_hash(hash['allowanceThreshold']) if hash['allowanceThreshold'] # Create a new hash for additional properties, removing known properties. new_hash = hash.reject { |k, _| names.value?(k) } additional_properties = APIHelper.get_additional_properties( new_hash, proc { |value| value } ) # Create object from extracted values. DataTrigger1.new(filter_criteria: filter_criteria, condition: condition, action: action, condition_type: condition_type, comparitor: comparitor, threshold: threshold, threshold_unit: threshold_unit, cycle_type: cycle_type, allowance_threshold: allowance_threshold, additional_properties: additional_properties) end |
.names ⇒ Object
A mapping from model property names to API property names.
53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/verizon/models/data_trigger1.rb', line 53 def self.names @_hash = {} if @_hash.nil? @_hash['filter_criteria'] = 'filterCriteria' @_hash['condition'] = 'condition' @_hash['action'] = 'action' @_hash['condition_type'] = 'conditionType' @_hash['comparitor'] = 'comparitor' @_hash['threshold'] = 'threshold' @_hash['threshold_unit'] = 'thresholdUnit' @_hash['cycle_type'] = 'cycleType' @_hash['allowance_threshold'] = 'allowanceThreshold' @_hash end |
.nullables ⇒ Object
An array for nullable fields
83 84 85 |
# File 'lib/verizon/models/data_trigger1.rb', line 83 def self.nullables [] end |
.optionals ⇒ Object
An array for optional fields
68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/verizon/models/data_trigger1.rb', line 68 def self.optionals %w[ filter_criteria condition action condition_type comparitor threshold threshold_unit cycle_type allowance_threshold ] end |
.validate(value) ⇒ Object
Validates an instance of the object from a given value.
147 148 149 150 151 152 153 |
# File 'lib/verizon/models/data_trigger1.rb', line 147 def self.validate(value) return true if value.instance_of? self return false unless value.instance_of? Hash true end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
166 167 168 169 170 171 172 173 174 |
# File 'lib/verizon/models/data_trigger1.rb', line 166 def inspect class_name = self.class.name.split('::').last "<#{class_name} filter_criteria: #{@filter_criteria.inspect}, condition:"\ " #{@condition.inspect}, action: #{@action.inspect}, condition_type:"\ " #{@condition_type.inspect}, comparitor: #{@comparitor.inspect}, threshold:"\ " #{@threshold.inspect}, threshold_unit: #{@threshold_unit.inspect}, cycle_type:"\ " #{@cycle_type.inspect}, allowance_threshold: #{@allowance_threshold.inspect},"\ " additional_properties: #{@additional_properties}>" end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
156 157 158 159 160 161 162 163 |
# File 'lib/verizon/models/data_trigger1.rb', line 156 def to_s class_name = self.class.name.split('::').last "<#{class_name} filter_criteria: #{@filter_criteria}, condition: #{@condition}, action:"\ " #{@action}, condition_type: #{@condition_type}, comparitor: #{@comparitor}, threshold:"\ " #{@threshold}, threshold_unit: #{@threshold_unit}, cycle_type: #{@cycle_type},"\ " allowance_threshold: #{@allowance_threshold}, additional_properties:"\ " #{@additional_properties}>" end |