/// <summary> /// Deserialize JSON into a FHIR Parameters /// </summary> public static void DeserializeJsonProperty(this Parameters current, ref Utf8JsonReader reader, JsonSerializerOptions options, string propertyName) { switch (propertyName) { case "parameter": if ((reader.TokenType != JsonTokenType.StartArray) || (!reader.Read())) { throw new JsonException($"Parameters error reading 'parameter' expected StartArray, found {reader.TokenType}! depth: {reader.CurrentDepth}, pos: {reader.BytesConsumed}"); } current.Parameter = new List <Parameters.ParameterComponent>(); while (reader.TokenType != JsonTokenType.EndArray) { Hl7.Fhir.Model.Parameters.ParameterComponent v_Parameter = new Hl7.Fhir.Model.Parameters.ParameterComponent(); v_Parameter.DeserializeJson(ref reader, options); current.Parameter.Add(v_Parameter); if (!reader.Read()) { throw new JsonException($"Parameters error reading 'parameter' array, read failed! depth: {reader.CurrentDepth}, pos: {reader.BytesConsumed}"); } if (reader.TokenType == JsonTokenType.EndObject) { reader.Read(); } } if (current.Parameter.Count == 0) { current.Parameter = null; } break; // Complex: Parameters, Export: Parameters, Base: Resource default: ((Hl7.Fhir.Model.Resource)current).DeserializeJsonProperty(ref reader, options, propertyName); break; } }
/// <summary> /// Deserialize JSON into a FHIR Parameters#Parameter /// </summary> public static void DeserializeJsonProperty(this Parameters.ParameterComponent current, ref Utf8JsonReader reader, JsonSerializerOptions options, string propertyName) { switch (propertyName) { case "name": if (reader.TokenType == JsonTokenType.Null) { current.NameElement = new FhirString(); reader.Skip(); } else { current.NameElement = new FhirString(reader.GetString()); } break; case "_name": if (current.NameElement == null) { current.NameElement = new FhirString(); } ((Hl7.Fhir.Model.Element)current.NameElement).DeserializeJson(ref reader, options); break; case "valueBase64Binary": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Base64Binary(); reader.Skip(); } else { current.Value = new Base64Binary(System.Convert.FromBase64String(reader.GetString())); } break; case "_valueBase64Binary": if (current.Value == null) { current.Value = new Base64Binary(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueBoolean": if (reader.TokenType == JsonTokenType.Null) { current.Value = new FhirBoolean(); reader.Skip(); } else { current.Value = new FhirBoolean(reader.GetBoolean()); } break; case "_valueBoolean": if (current.Value == null) { current.Value = new FhirBoolean(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueCanonical": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Canonical(); reader.Skip(); } else { current.Value = new Canonical(reader.GetString()); } break; case "_valueCanonical": if (current.Value == null) { current.Value = new Canonical(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueCode": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Code(); reader.Skip(); } else { current.Value = new Code(reader.GetString()); } break; case "_valueCode": if (current.Value == null) { current.Value = new Code(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueDate": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Date(); reader.Skip(); } else { current.Value = new Date(reader.GetString()); } break; case "_valueDate": if (current.Value == null) { current.Value = new Date(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueDateTime": if (reader.TokenType == JsonTokenType.Null) { current.Value = new FhirDateTime(); reader.Skip(); } else { current.Value = new FhirDateTime(reader.GetString()); } break; case "_valueDateTime": if (current.Value == null) { current.Value = new FhirDateTime(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueDecimal": if (reader.TokenType == JsonTokenType.Null) { current.Value = new FhirDecimal(); reader.Skip(); } else { current.Value = new FhirDecimal(reader.GetDecimal()); } break; case "_valueDecimal": if (current.Value == null) { current.Value = new FhirDecimal(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueId": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Id(); reader.Skip(); } else { current.Value = new Id(reader.GetString()); } break; case "_valueId": if (current.Value == null) { current.Value = new Id(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueInstant": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Instant(); reader.Skip(); } else { current.Value = new Instant(DateTimeOffset.Parse(reader.GetString())); } break; case "_valueInstant": if (current.Value == null) { current.Value = new Instant(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueInteger": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Integer(); reader.Skip(); } else { current.Value = new Integer(reader.GetInt32()); } break; case "_valueInteger": if (current.Value == null) { current.Value = new Integer(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueMarkdown": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Markdown(); reader.Skip(); } else { current.Value = new Markdown(reader.GetString()); } break; case "_valueMarkdown": if (current.Value == null) { current.Value = new Markdown(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueOid": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Oid(); reader.Skip(); } else { current.Value = new Oid(reader.GetString()); } break; case "_valueOid": if (current.Value == null) { current.Value = new Oid(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valuePositiveInt": if (reader.TokenType == JsonTokenType.Null) { current.Value = new PositiveInt(); reader.Skip(); } else { current.Value = new PositiveInt(reader.GetInt32()); } break; case "_valuePositiveInt": if (current.Value == null) { current.Value = new PositiveInt(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueString": if (reader.TokenType == JsonTokenType.Null) { current.Value = new FhirString(); reader.Skip(); } else { current.Value = new FhirString(reader.GetString()); } break; case "_valueString": if (current.Value == null) { current.Value = new FhirString(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueTime": current.Value = new Hl7.Fhir.Model.Time(); ((Hl7.Fhir.Model.Time)current.Value).DeserializeJson(ref reader, options); break; case "valueUnsignedInt": if (reader.TokenType == JsonTokenType.Null) { current.Value = new UnsignedInt(); reader.Skip(); } else { current.Value = new UnsignedInt(reader.GetInt32()); } break; case "_valueUnsignedInt": if (current.Value == null) { current.Value = new UnsignedInt(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueUri": if (reader.TokenType == JsonTokenType.Null) { current.Value = new FhirUri(); reader.Skip(); } else { current.Value = new FhirUri(reader.GetString()); } break; case "_valueUri": if (current.Value == null) { current.Value = new FhirUri(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueUrl": if (reader.TokenType == JsonTokenType.Null) { current.Value = new FhirUrl(); reader.Skip(); } else { current.Value = new FhirUrl(reader.GetString()); } break; case "_valueUrl": if (current.Value == null) { current.Value = new FhirUrl(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueUuid": if (reader.TokenType == JsonTokenType.Null) { current.Value = new Uuid(); reader.Skip(); } else { current.Value = new Uuid(reader.GetString()); } break; case "_valueUuid": if (current.Value == null) { current.Value = new Uuid(); } ((Hl7.Fhir.Model.Element)current.Value).DeserializeJson(ref reader, options); break; case "valueAddress": current.Value = new Hl7.Fhir.Model.Address(); ((Hl7.Fhir.Model.Address)current.Value).DeserializeJson(ref reader, options); break; case "valueAge": current.Value = new Hl7.Fhir.Model.Age(); ((Hl7.Fhir.Model.Age)current.Value).DeserializeJson(ref reader, options); break; case "valueAnnotation": current.Value = new Hl7.Fhir.Model.Annotation(); ((Hl7.Fhir.Model.Annotation)current.Value).DeserializeJson(ref reader, options); break; case "valueAttachment": current.Value = new Hl7.Fhir.Model.Attachment(); ((Hl7.Fhir.Model.Attachment)current.Value).DeserializeJson(ref reader, options); break; case "valueCodeableConcept": current.Value = new Hl7.Fhir.Model.CodeableConcept(); ((Hl7.Fhir.Model.CodeableConcept)current.Value).DeserializeJson(ref reader, options); break; case "valueCoding": current.Value = new Hl7.Fhir.Model.Coding(); ((Hl7.Fhir.Model.Coding)current.Value).DeserializeJson(ref reader, options); break; case "valueContactPoint": current.Value = new Hl7.Fhir.Model.ContactPoint(); ((Hl7.Fhir.Model.ContactPoint)current.Value).DeserializeJson(ref reader, options); break; case "valueCount": current.Value = new Hl7.Fhir.Model.Count(); ((Hl7.Fhir.Model.Count)current.Value).DeserializeJson(ref reader, options); break; case "valueDistance": current.Value = new Hl7.Fhir.Model.Distance(); ((Hl7.Fhir.Model.Distance)current.Value).DeserializeJson(ref reader, options); break; case "valueDuration": current.Value = new Hl7.Fhir.Model.Duration(); ((Hl7.Fhir.Model.Duration)current.Value).DeserializeJson(ref reader, options); break; case "valueHumanName": current.Value = new Hl7.Fhir.Model.HumanName(); ((Hl7.Fhir.Model.HumanName)current.Value).DeserializeJson(ref reader, options); break; case "valueIdentifier": current.Value = new Hl7.Fhir.Model.Identifier(); ((Hl7.Fhir.Model.Identifier)current.Value).DeserializeJson(ref reader, options); break; case "valueMoney": current.Value = new Hl7.Fhir.Model.Money(); ((Hl7.Fhir.Model.Money)current.Value).DeserializeJson(ref reader, options); break; case "valuePeriod": current.Value = new Hl7.Fhir.Model.Period(); ((Hl7.Fhir.Model.Period)current.Value).DeserializeJson(ref reader, options); break; case "valueQuantity": current.Value = new Hl7.Fhir.Model.Quantity(); ((Hl7.Fhir.Model.Quantity)current.Value).DeserializeJson(ref reader, options); break; case "valueRange": current.Value = new Hl7.Fhir.Model.Range(); ((Hl7.Fhir.Model.Range)current.Value).DeserializeJson(ref reader, options); break; case "valueRatio": current.Value = new Hl7.Fhir.Model.Ratio(); ((Hl7.Fhir.Model.Ratio)current.Value).DeserializeJson(ref reader, options); break; case "valueReference": current.Value = new Hl7.Fhir.Model.ResourceReference(); ((Hl7.Fhir.Model.ResourceReference)current.Value).DeserializeJson(ref reader, options); break; case "valueSampledData": current.Value = new Hl7.Fhir.Model.SampledData(); ((Hl7.Fhir.Model.SampledData)current.Value).DeserializeJson(ref reader, options); break; case "valueSignature": current.Value = new Hl7.Fhir.Model.Signature(); ((Hl7.Fhir.Model.Signature)current.Value).DeserializeJson(ref reader, options); break; case "valueTiming": current.Value = new Hl7.Fhir.Model.Timing(); ((Hl7.Fhir.Model.Timing)current.Value).DeserializeJson(ref reader, options); break; case "valueContactDetail": current.Value = new Hl7.Fhir.Model.ContactDetail(); ((Hl7.Fhir.Model.ContactDetail)current.Value).DeserializeJson(ref reader, options); break; case "valueContributor": current.Value = new Hl7.Fhir.Model.Contributor(); ((Hl7.Fhir.Model.Contributor)current.Value).DeserializeJson(ref reader, options); break; case "valueDataRequirement": current.Value = new Hl7.Fhir.Model.DataRequirement(); ((Hl7.Fhir.Model.DataRequirement)current.Value).DeserializeJson(ref reader, options); break; case "valueExpression": current.Value = new Hl7.Fhir.Model.Expression(); ((Hl7.Fhir.Model.Expression)current.Value).DeserializeJson(ref reader, options); break; case "valueParameterDefinition": current.Value = new Hl7.Fhir.Model.ParameterDefinition(); ((Hl7.Fhir.Model.ParameterDefinition)current.Value).DeserializeJson(ref reader, options); break; case "valueRelatedArtifact": current.Value = new Hl7.Fhir.Model.RelatedArtifact(); ((Hl7.Fhir.Model.RelatedArtifact)current.Value).DeserializeJson(ref reader, options); break; case "valueTriggerDefinition": current.Value = new Hl7.Fhir.Model.TriggerDefinition(); ((Hl7.Fhir.Model.TriggerDefinition)current.Value).DeserializeJson(ref reader, options); break; case "valueUsageContext": current.Value = new Hl7.Fhir.Model.UsageContext(); ((Hl7.Fhir.Model.UsageContext)current.Value).DeserializeJson(ref reader, options); break; case "valueDosage": current.Value = new Hl7.Fhir.Model.Dosage(); ((Hl7.Fhir.Model.Dosage)current.Value).DeserializeJson(ref reader, options); break; case "valueMeta": current.Value = new Hl7.Fhir.Model.Meta(); ((Hl7.Fhir.Model.Meta)current.Value).DeserializeJson(ref reader, options); break; case "resource": current.Resource = JsonStreamResourceConverter.PolymorphicRead(ref reader, typeof(Resource), options); break; case "part": if ((reader.TokenType != JsonTokenType.StartArray) || (!reader.Read())) { throw new JsonException($"ParameterComponent error reading 'part' expected StartArray, found {reader.TokenType}! depth: {reader.CurrentDepth}, pos: {reader.BytesConsumed}"); } current.Part = new List <Parameters.ParameterComponent>(); while (reader.TokenType != JsonTokenType.EndArray) { Hl7.Fhir.Model.Parameters.ParameterComponent v_Part = new Hl7.Fhir.Model.Parameters.ParameterComponent(); v_Part.DeserializeJson(ref reader, options); current.Part.Add(v_Part); if (!reader.Read()) { throw new JsonException($"ParameterComponent error reading 'part' array, read failed! depth: {reader.CurrentDepth}, pos: {reader.BytesConsumed}"); } if (reader.TokenType == JsonTokenType.EndObject) { reader.Read(); } } if (current.Part.Count == 0) { current.Part = null; } break; // Complex: parameter, Export: ParameterComponent, Base: BackboneElement default: ((Hl7.Fhir.Model.BackboneElement)current).DeserializeJsonProperty(ref reader, options, propertyName); break; } }