Exemplo n.º 1
0
        /// <summary>
        /// Serialize to a JSON object
        /// </summary>
        public new void SerializeJson(Utf8JsonWriter writer, JsonSerializerOptions options, bool includeStartObject = true)
        {
            if (includeStartObject)
            {
                writer.WriteStartObject();
            }
            if (!string.IsNullOrEmpty(ResourceType))
            {
                writer.WriteString("resourceType", (string)ResourceType !);
            }


            ((fhirCsR4.Models.DomainResource) this).SerializeJson(writer, options, false);

            if ((Identifier != null) && (Identifier.Count != 0))
            {
                writer.WritePropertyName("identifier");
                writer.WriteStartArray();

                foreach (Identifier valIdentifier in Identifier)
                {
                    valIdentifier.SerializeJson(writer, options, true);
                }

                writer.WriteEndArray();
            }

            if ((InstantiatesCanonical != null) && (InstantiatesCanonical.Count != 0))
            {
                writer.WritePropertyName("instantiatesCanonical");
                writer.WriteStartArray();

                foreach (string valInstantiatesCanonical in InstantiatesCanonical)
                {
                    writer.WriteStringValue(valInstantiatesCanonical);
                }

                writer.WriteEndArray();
            }

            if ((_InstantiatesCanonical != null) && (_InstantiatesCanonical.Count != 0))
            {
                writer.WritePropertyName("_instantiatesCanonical");
                writer.WriteStartArray();

                foreach (Element val_InstantiatesCanonical in _InstantiatesCanonical)
                {
                    val_InstantiatesCanonical.SerializeJson(writer, options, true);
                }

                writer.WriteEndArray();
            }

            if ((InstantiatesUri != null) && (InstantiatesUri.Count != 0))
            {
                writer.WritePropertyName("instantiatesUri");
                writer.WriteStartArray();

                foreach (string valInstantiatesUri in InstantiatesUri)
                {
                    writer.WriteStringValue(valInstantiatesUri);
                }

                writer.WriteEndArray();
            }

            if ((_InstantiatesUri != null) && (_InstantiatesUri.Count != 0))
            {
                writer.WritePropertyName("_instantiatesUri");
                writer.WriteStartArray();

                foreach (Element val_InstantiatesUri in _InstantiatesUri)
                {
                    val_InstantiatesUri.SerializeJson(writer, options, true);
                }

                writer.WriteEndArray();
            }

            if (!string.IsNullOrEmpty(Status))
            {
                writer.WriteString("status", (string)Status !);
            }

            if (_Status != null)
            {
                writer.WritePropertyName("_status");
                _Status.SerializeJson(writer, options);
            }

            if (DataAbsentReason != null)
            {
                writer.WritePropertyName("dataAbsentReason");
                DataAbsentReason.SerializeJson(writer, options);
            }

            if (Patient != null)
            {
                writer.WritePropertyName("patient");
                Patient.SerializeJson(writer, options);
            }

            if (!string.IsNullOrEmpty(Date))
            {
                writer.WriteString("date", (string)Date !);
            }

            if (_Date != null)
            {
                writer.WritePropertyName("_date");
                _Date.SerializeJson(writer, options);
            }

            if (!string.IsNullOrEmpty(Name))
            {
                writer.WriteString("name", (string)Name !);
            }

            if (_Name != null)
            {
                writer.WritePropertyName("_name");
                _Name.SerializeJson(writer, options);
            }

            if (Relationship != null)
            {
                writer.WritePropertyName("relationship");
                Relationship.SerializeJson(writer, options);
            }

            if (Sex != null)
            {
                writer.WritePropertyName("sex");
                Sex.SerializeJson(writer, options);
            }

            if (BornPeriod != null)
            {
                writer.WritePropertyName("bornPeriod");
                BornPeriod.SerializeJson(writer, options);
            }

            if (!string.IsNullOrEmpty(BornDate))
            {
                writer.WriteString("bornDate", (string)BornDate !);
            }

            if (_BornDate != null)
            {
                writer.WritePropertyName("_bornDate");
                _BornDate.SerializeJson(writer, options);
            }

            if (!string.IsNullOrEmpty(BornString))
            {
                writer.WriteString("bornString", (string)BornString !);
            }

            if (_BornString != null)
            {
                writer.WritePropertyName("_bornString");
                _BornString.SerializeJson(writer, options);
            }

            if (AgeAge != null)
            {
                writer.WritePropertyName("ageAge");
                AgeAge.SerializeJson(writer, options);
            }

            if (AgeRange != null)
            {
                writer.WritePropertyName("ageRange");
                AgeRange.SerializeJson(writer, options);
            }

            if (!string.IsNullOrEmpty(AgeString))
            {
                writer.WriteString("ageString", (string)AgeString !);
            }

            if (_AgeString != null)
            {
                writer.WritePropertyName("_ageString");
                _AgeString.SerializeJson(writer, options);
            }

            if (EstimatedAge != null)
            {
                writer.WriteBoolean("estimatedAge", (bool)EstimatedAge !);
            }

            if (DeceasedBoolean != null)
            {
                writer.WriteBoolean("deceasedBoolean", (bool)DeceasedBoolean !);
            }

            if (DeceasedAge != null)
            {
                writer.WritePropertyName("deceasedAge");
                DeceasedAge.SerializeJson(writer, options);
            }

            if (DeceasedRange != null)
            {
                writer.WritePropertyName("deceasedRange");
                DeceasedRange.SerializeJson(writer, options);
            }

            if (!string.IsNullOrEmpty(DeceasedDate))
            {
                writer.WriteString("deceasedDate", (string)DeceasedDate !);
            }

            if (_DeceasedDate != null)
            {
                writer.WritePropertyName("_deceasedDate");
                _DeceasedDate.SerializeJson(writer, options);
            }

            if (!string.IsNullOrEmpty(DeceasedString))
            {
                writer.WriteString("deceasedString", (string)DeceasedString !);
            }

            if (_DeceasedString != null)
            {
                writer.WritePropertyName("_deceasedString");
                _DeceasedString.SerializeJson(writer, options);
            }

            if ((ReasonCode != null) && (ReasonCode.Count != 0))
            {
                writer.WritePropertyName("reasonCode");
                writer.WriteStartArray();

                foreach (CodeableConcept valReasonCode in ReasonCode)
                {
                    valReasonCode.SerializeJson(writer, options, true);
                }

                writer.WriteEndArray();
            }

            if ((ReasonReference != null) && (ReasonReference.Count != 0))
            {
                writer.WritePropertyName("reasonReference");
                writer.WriteStartArray();

                foreach (Reference valReasonReference in ReasonReference)
                {
                    valReasonReference.SerializeJson(writer, options, true);
                }

                writer.WriteEndArray();
            }

            if ((Note != null) && (Note.Count != 0))
            {
                writer.WritePropertyName("note");
                writer.WriteStartArray();

                foreach (Annotation valNote in Note)
                {
                    valNote.SerializeJson(writer, options, true);
                }

                writer.WriteEndArray();
            }

            if ((Condition != null) && (Condition.Count != 0))
            {
                writer.WritePropertyName("condition");
                writer.WriteStartArray();

                foreach (FamilyMemberHistoryCondition valCondition in Condition)
                {
                    valCondition.SerializeJson(writer, options, true);
                }

                writer.WriteEndArray();
            }

            if (includeStartObject)
            {
                writer.WriteEndObject();
            }
        }