Class: CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
- Inherits:
-
Object
- Object
- CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
- Defined in:
- lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb
Overview
Points to the claim or service line that this invoice is attributed to
Instance Attribute Summary collapse
- #discriminant ⇒ String readonly
- #member ⇒ Object readonly
Class Method Summary collapse
- .claim_id(member:) ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
-
.from_json(json_object:) ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
Deserialize a JSON object to an instance of InvoiceItemAttributionCreate.
- .service_line_id(member:) ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
- .unattributed ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
-
.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(member:, discriminant:) ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate constructor
-
#is_a?(obj) ⇒ Boolean
For Union Types, is_a? functionality is delegated to the wrapped member.
- #kind_of? ⇒ Object
-
#to_json(*_args) ⇒ String
For Union Types, to_json functionality is delegated to the wrapped member.
Constructor Details
#initialize(member:, discriminant:) ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
22 23 24 25 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 22 def initialize(member:, discriminant:) @member = member @discriminant = discriminant end |
Instance Attribute Details
#discriminant ⇒ String (readonly)
14 15 16 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 14 def discriminant @discriminant end |
#member ⇒ Object (readonly)
12 13 14 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 12 def member @member end |
Class Method Details
.claim_id(member:) ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
98 99 100 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 98 def self.claim_id(member:) new(member: member, discriminant: "claim_id") end |
.from_json(json_object:) ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
Deserialize a JSON object to an instance of InvoiceItemAttributionCreate
31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 31 def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) member = case struct.type when "service_line_id" json_object.value when "claim_id" json_object.value when "unattributed" nil else json_object end new(member: member, discriminant: struct.type) end |
.service_line_id(member:) ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
92 93 94 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 92 def self.service_line_id(member:) new(member: member, discriminant: "service_line_id") end |
.unattributed ⇒ CandidApiClient::Invoices::V2::Types::InvoiceItemAttributionCreate
103 104 105 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 103 def self.unattributed new(member: nil, discriminant: "unattributed") 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.
69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 69 def self.validate_raw(obj:) case obj.type when "service_line_id" obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.") when "claim_id" obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.") when "unattributed" # noop else raise("Passed value matched no type within the union, validation failed.") end end |
Instance Method Details
#is_a?(obj) ⇒ Boolean
For Union Types, is_a? functionality is delegated to the wrapped member.
86 87 88 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 86 def is_a?(obj) @member.is_a?(obj) end |
#kind_of? ⇒ Object
17 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 17 alias kind_of? is_a? |
#to_json(*_args) ⇒ String
For Union Types, to_json functionality is delegated to the wrapped member.
49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb', line 49 def to_json(*_args) case @discriminant when "service_line_id" { "type": @discriminant, "value": @member }.to_json when "claim_id" { "type": @discriminant, "value": @member }.to_json when "unattributed" { type: @discriminant }.to_json else { "type": @discriminant, value: @member }.to_json end @member.to_json end |