Module: Pago::V2026_04::Unions::FileCreate
- Defined in:
- lib/pago/v2026_04/unions.rb,
sig/pago/v2026_04/generated.rbs
Overview
Variants: Models::DownloadableFileCreate, Models::ProductMediaFileCreate, Models::OrganizationAvatarFileCreate, Models::SupportCaseAttachmentFileCreate.
Constant Summary collapse
- DISCRIMINATOR =
"service"
Class Method Summary collapse
-
.from_json(data) ⇒ Object?
The resolved variant, or the raw payload.
-
.mapping ⇒ Hash{String => Class}
Discriminator value to model class.
-
.variants ⇒ Array<Class>
Every model this union can resolve to.
Class Method Details
.from_json(data) ⇒ Object?
Returns the resolved variant, or the raw payload.
496 497 498 499 |
# File 'lib/pago/v2026_04/unions.rb', line 496 def self.from_json(data) data = ::JSON.parse(data) if data.is_a?(String) ::Pago::Serde.union(data, discriminator: DISCRIMINATOR, mapping: mapping, variants: variants) end |
.mapping ⇒ Hash{String => Class}
Returns discriminator value to model class.
480 481 482 483 484 485 486 487 |
# File 'lib/pago/v2026_04/unions.rb', line 480 def self.mapping @mapping ||= { "downloadable" => Models::DownloadableFileCreate, "organization_avatar" => Models::OrganizationAvatarFileCreate, "product_media" => Models::ProductMediaFileCreate, "support_case_attachment" => Models::SupportCaseAttachmentFileCreate }.freeze end |
.variants ⇒ Array<Class>
Returns every model this union can resolve to.
490 491 492 |
# File 'lib/pago/v2026_04/unions.rb', line 490 def self.variants @variants ||= [Models::DownloadableFileCreate, Models::ProductMediaFileCreate, Models::OrganizationAvatarFileCreate, Models::SupportCaseAttachmentFileCreate].freeze end |