Class: LaunchDarkly::Interfaces::DataSystem::ServerIntent
- Inherits:
-
Object
- Object
- LaunchDarkly::Interfaces::DataSystem::ServerIntent
- Defined in:
- lib/ldclient-rb/interfaces/data_system.rb
Overview
ServerIntent represents the type of change associated with the payload.
Instance Attribute Summary collapse
-
#payload ⇒ Payload
readonly
The payload.
Class Method Summary collapse
-
.from_h(data) ⇒ ServerIntent
Deserializes a ServerIntent from a Hash.
Instance Method Summary collapse
-
#initialize(payload:) ⇒ ServerIntent
constructor
A new instance of ServerIntent.
-
#to_h ⇒ Hash
Serializes the ServerIntent to a Hash.
Constructor Details
#initialize(payload:) ⇒ ServerIntent
Returns a new instance of ServerIntent.
337 338 339 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 337 def initialize(payload:) @payload = payload end |
Instance Attribute Details
#payload ⇒ Payload (readonly)
Returns The payload.
332 333 334 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 332 def payload @payload end |
Class Method Details
.from_h(data) ⇒ ServerIntent
Deserializes a ServerIntent from a Hash.
359 360 361 362 363 364 365 366 367 368 369 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 359 def self.from_h(data) payloads = data['payloads'] || data[:payloads] raise ArgumentError, "Invalid data for ServerIntent: 'payloads' key is missing or not an array" unless payloads.is_a?(Array) raise ArgumentError, "Invalid data for ServerIntent: expected exactly one payload" unless payloads.length == 1 payload = payloads[0] raise ArgumentError, "Invalid payload in ServerIntent: expected a hash" unless payload.is_a?(Hash) ServerIntent.new(payload: Payload.from_h(payload)) end |
Instance Method Details
#to_h ⇒ Hash
Serializes the ServerIntent to a Hash.
346 347 348 349 350 |
# File 'lib/ldclient-rb/interfaces/data_system.rb', line 346 def to_h { payloads: [@payload.to_h], } end |