Class: TrophyApiClient::MetricEventPointsResponse
- Inherits:
-
Object
- Object
- TrophyApiClient::MetricEventPointsResponse
- Defined in:
- lib/trophy_api_client/types/metric_event_points_response.rb
Overview
Points system response for metric events.
Constant Summary collapse
- OMIT =
Object.new
Instance Attribute Summary collapse
-
#added ⇒ Integer
readonly
The points added by this event.
-
#additional_properties ⇒ OpenStruct
readonly
Additional properties unmapped to the current class definition.
-
#awards ⇒ Array<TrophyApiClient::PointsAward>
readonly
Array of trigger awards that added points.
-
#badge_url ⇒ String
readonly
The URL of the badge image for the points system.
-
#description ⇒ String
readonly
The description of the points system.
-
#id ⇒ String
readonly
The ID of the points system.
-
#key ⇒ String
readonly
The key of the points system.
-
#max_points ⇒ Float
readonly
The maximum number of points a user can be awarded in this points system.
-
#name ⇒ String
readonly
The name of the points system.
-
#total ⇒ Integer
readonly
The user’s total points.
Class Method Summary collapse
-
.from_json(json_object:) ⇒ TrophyApiClient::MetricEventPointsResponse
Deserialize a JSON object to an instance of MetricEventPointsResponse.
-
.validate_raw(obj:) ⇒ Void
Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object’s property definitions.
Instance Method Summary collapse
- #initialize(id:, key:, name:, total:, added:, awards:, description: OMIT, badge_url: OMIT, max_points: OMIT, additional_properties: nil) ⇒ TrophyApiClient::MetricEventPointsResponse constructor
-
#to_json(*_args) ⇒ String
Serialize an instance of MetricEventPointsResponse to a JSON object.
Constructor Details
#initialize(id:, key:, name:, total:, added:, awards:, description: OMIT, badge_url: OMIT, max_points: OMIT, additional_properties: nil) ⇒ TrophyApiClient::MetricEventPointsResponse
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 47 def initialize(id:, key:, name:, total:, added:, awards:, description: OMIT, badge_url: OMIT, max_points: OMIT, additional_properties: nil) @id = id @key = key @name = name @description = description if description != OMIT @badge_url = badge_url if badge_url != OMIT @max_points = max_points if max_points != OMIT @total = total @added = added @awards = awards @additional_properties = additional_properties @_field_set = { "id": id, "key": key, "name": name, "description": description, "badgeUrl": badge_url, "maxPoints": max_points, "total": total, "added": added, "awards": awards }.reject do |_k, v| v == OMIT end end |
Instance Attribute Details
#added ⇒ Integer (readonly)
Returns The points added by this event.
25 26 27 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 25 def added @added end |
#additional_properties ⇒ OpenStruct (readonly)
Returns Additional properties unmapped to the current class definition.
29 30 31 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 29 def additional_properties @additional_properties end |
#awards ⇒ Array<TrophyApiClient::PointsAward> (readonly)
Returns Array of trigger awards that added points.
27 28 29 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 27 def awards @awards end |
#badge_url ⇒ String (readonly)
Returns The URL of the badge image for the points system.
19 20 21 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 19 def badge_url @badge_url end |
#description ⇒ String (readonly)
Returns The description of the points system.
17 18 19 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 17 def description @description end |
#id ⇒ String (readonly)
Returns The ID of the points system.
11 12 13 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 11 def id @id end |
#key ⇒ String (readonly)
Returns The key of the points system.
13 14 15 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 13 def key @key end |
#max_points ⇒ Float (readonly)
Returns The maximum number of points a user can be awarded in this points system.
21 22 23 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 21 def max_points @max_points end |
#name ⇒ String (readonly)
Returns The name of the points system.
15 16 17 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 15 def name @name end |
#total ⇒ Integer (readonly)
Returns The user’s total points.
23 24 25 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 23 def total @total end |
Class Method Details
.from_json(json_object:) ⇒ TrophyApiClient::MetricEventPointsResponse
Deserialize a JSON object to an instance of MetricEventPointsResponse
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 78 def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) id = parsed_json["id"] key = parsed_json["key"] name = parsed_json["name"] description = parsed_json["description"] badge_url = parsed_json["badgeUrl"] max_points = parsed_json["maxPoints"] total = parsed_json["total"] added = parsed_json["added"] awards = parsed_json["awards"]&.map do |item| item = item.to_json TrophyApiClient::PointsAward.from_json(json_object: item) end new( id: id, key: key, name: name, description: description, badge_url: badge_url, max_points: max_points, total: total, added: added, awards: awards, additional_properties: struct ) end |
.validate_raw(obj:) ⇒ Void
Leveraged for Union-type generation, validate_raw attempts to parse the given
hash and check each fields type against the current object's property
definitions.
120 121 122 123 124 125 126 127 128 129 130 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 120 def self.validate_raw(obj:) obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.") obj.key.is_a?(String) != false || raise("Passed value for field obj.key is not the expected type, validation failed.") obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.") obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.") obj.badge_url&.is_a?(String) != false || raise("Passed value for field obj.badge_url is not the expected type, validation failed.") obj.max_points&.is_a?(Float) != false || raise("Passed value for field obj.max_points is not the expected type, validation failed.") obj.total.is_a?(Integer) != false || raise("Passed value for field obj.total is not the expected type, validation failed.") obj.added.is_a?(Integer) != false || raise("Passed value for field obj.added is not the expected type, validation failed.") obj.awards.is_a?(Array) != false || raise("Passed value for field obj.awards is not the expected type, validation failed.") end |
Instance Method Details
#to_json(*_args) ⇒ String
Serialize an instance of MetricEventPointsResponse to a JSON object
110 111 112 |
# File 'lib/trophy_api_client/types/metric_event_points_response.rb', line 110 def to_json(*_args) @_field_set&.to_json end |