Class: LaunchDarkly::Interfaces::DataSystem::Payload
- Inherits:
-
Object
- Object
- LaunchDarkly::Interfaces::DataSystem::Payload
- Defined in:
- lib/ldclient-rb/interfaces/data_system.rb
Overview
Payload represents a payload delivered in a streaming response.
Instance Attribute Summary collapse
-
#code ⇒ String
readonly
The intent code (IntentCode).
-
#id ⇒ String
readonly
The payload ID.
-
#reason ⇒ String
readonly
The reason.
-
#target ⇒ Integer
readonly
The target.
Class Method Summary collapse
-
.from_h(data) ⇒ Payload
Deserializes a Payload from a Hash.
Instance Method Summary collapse
-
#initialize(id:, target:, code:, reason:) ⇒ Payload
constructor
A new instance of Payload.
-
#to_h ⇒ Hash
Serializes the Payload to a Hash.
Constructor Details
#initialize(id:, target:, code:, reason:) ⇒ Payload
Returns a new instance of Payload.
285 286 287 288 289 290 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 285 def initialize(id:, target:, code:, reason:) @id = id @target = target @code = code @reason = reason end |
Instance Attribute Details
#code ⇒ String (readonly)
Returns The intent code (IntentCode).
274 275 276 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 274 def code @code end |
#id ⇒ String (readonly)
Returns The payload ID.
268 269 270 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 268 def id @id end |
#reason ⇒ String (readonly)
Returns The reason.
277 278 279 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 277 def reason @reason end |
#target ⇒ Integer (readonly)
Returns The target.
271 272 273 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 271 def target @target end |
Class Method Details
.from_h(data) ⇒ Payload
Deserializes a Payload from a Hash.
313 314 315 316 317 318 319 320 321 322 323 324 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 313 def self.from_h(data) intent_code = data['intentCode'] || data[:intentCode] raise ArgumentError, "Invalid data for Payload: 'intentCode' key is missing or not a string" if intent_code.nil? || !intent_code.is_a?(String) Payload.new( id: data['id'] || data[:id] || "", target: data['target'] || data[:target] || 0, code: intent_code, reason: data['reason'] || data[:reason] || "" ) end |
Instance Method Details
#to_h ⇒ Hash
Serializes the Payload to a Hash.
297 298 299 300 301 302 303 304 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 297 def to_h { id: @id, target: @target, intentCode: @code, reason: @reason, } end |