public static FhirR4Observation fromJson()

in sdk/healthinsights/azure-health-insights-radiologyinsights/src/main/java/com/azure/health/insights/radiologyinsights/models/FhirR4Observation.java [601:772]


    public static FhirR4Observation fromJson(JsonReader jsonReader) throws IOException {
        return jsonReader.readObject(reader -> {
            String id = null;
            FhirR4Meta meta = null;
            String implicitRules = null;
            String language = null;
            FhirR4Narrative text = null;
            List<FhirR4Resource> contained = null;
            List<FhirR4Extension> extension = null;
            List<FhirR4Extension> modifierExtension = null;
            ObservationStatusCodeType status = null;
            FhirR4CodeableConcept code = null;
            String resourceType = "Observation";
            List<FhirR4Identifier> identifier = null;
            List<FhirR4CodeableConcept> category = null;
            FhirR4Reference subject = null;
            FhirR4Reference encounter = null;
            String effectiveDateTime = null;
            FhirR4Period effectivePeriod = null;
            String effectiveInstant = null;
            String issued = null;
            FhirR4Quantity valueQuantity = null;
            FhirR4CodeableConcept valueCodeableConcept = null;
            String valueString = null;
            Boolean valueBoolean = null;
            Integer valueInteger = null;
            FhirR4Range valueRange = null;
            FhirR4Ratio valueRatio = null;
            FhirR4SampledData valueSampledData = null;
            String valueTime = null;
            String valueDateTime = null;
            FhirR4Period valuePeriod = null;
            FhirR4CodeableConcept dataAbsentReason = null;
            List<FhirR4CodeableConcept> interpretation = null;
            List<FhirR4Annotation> note = null;
            FhirR4CodeableConcept bodySite = null;
            FhirR4CodeableConcept method = null;
            List<FhirR4ObservationReferenceRange> referenceRange = null;
            List<FhirR4Reference> hasMember = null;
            List<FhirR4Reference> derivedFrom = null;
            List<FhirR4ObservationComponent> component = null;
            Map<String, Object> additionalProperties = null;
            while (reader.nextToken() != JsonToken.END_OBJECT) {
                String fieldName = reader.getFieldName();
                reader.nextToken();
                if ("id".equals(fieldName)) {
                    id = reader.getString();
                } else if ("meta".equals(fieldName)) {
                    meta = FhirR4Meta.fromJson(reader);
                } else if ("implicitRules".equals(fieldName)) {
                    implicitRules = reader.getString();
                } else if ("language".equals(fieldName)) {
                    language = reader.getString();
                } else if ("text".equals(fieldName)) {
                    text = FhirR4Narrative.fromJson(reader);
                } else if ("contained".equals(fieldName)) {
                    contained = reader.readArray(reader1 -> FhirR4Resource.fromJson(reader1));
                } else if ("extension".equals(fieldName)) {
                    extension = reader.readArray(reader1 -> FhirR4Extension.fromJson(reader1));
                } else if ("modifierExtension".equals(fieldName)) {
                    modifierExtension = reader.readArray(reader1 -> FhirR4Extension.fromJson(reader1));
                } else if ("status".equals(fieldName)) {
                    status = ObservationStatusCodeType.fromString(reader.getString());
                } else if ("code".equals(fieldName)) {
                    code = FhirR4CodeableConcept.fromJson(reader);
                } else if ("resourceType".equals(fieldName)) {
                    resourceType = reader.getString();
                } else if ("identifier".equals(fieldName)) {
                    identifier = reader.readArray(reader1 -> FhirR4Identifier.fromJson(reader1));
                } else if ("category".equals(fieldName)) {
                    category = reader.readArray(reader1 -> FhirR4CodeableConcept.fromJson(reader1));
                } else if ("subject".equals(fieldName)) {
                    subject = FhirR4Reference.fromJson(reader);
                } else if ("encounter".equals(fieldName)) {
                    encounter = FhirR4Reference.fromJson(reader);
                } else if ("effectiveDateTime".equals(fieldName)) {
                    effectiveDateTime = reader.getString();
                } else if ("effectivePeriod".equals(fieldName)) {
                    effectivePeriod = FhirR4Period.fromJson(reader);
                } else if ("effectiveInstant".equals(fieldName)) {
                    effectiveInstant = reader.getString();
                } else if ("issued".equals(fieldName)) {
                    issued = reader.getString();
                } else if ("valueQuantity".equals(fieldName)) {
                    valueQuantity = FhirR4Quantity.fromJson(reader);
                } else if ("valueCodeableConcept".equals(fieldName)) {
                    valueCodeableConcept = FhirR4CodeableConcept.fromJson(reader);
                } else if ("valueString".equals(fieldName)) {
                    valueString = reader.getString();
                } else if ("valueBoolean".equals(fieldName)) {
                    valueBoolean = reader.getNullable(JsonReader::getBoolean);
                } else if ("valueInteger".equals(fieldName)) {
                    valueInteger = reader.getNullable(JsonReader::getInt);
                } else if ("valueRange".equals(fieldName)) {
                    valueRange = FhirR4Range.fromJson(reader);
                } else if ("valueRatio".equals(fieldName)) {
                    valueRatio = FhirR4Ratio.fromJson(reader);
                } else if ("valueSampledData".equals(fieldName)) {
                    valueSampledData = FhirR4SampledData.fromJson(reader);
                } else if ("valueTime".equals(fieldName)) {
                    valueTime = reader.getString();
                } else if ("valueDateTime".equals(fieldName)) {
                    valueDateTime = reader.getString();
                } else if ("valuePeriod".equals(fieldName)) {
                    valuePeriod = FhirR4Period.fromJson(reader);
                } else if ("dataAbsentReason".equals(fieldName)) {
                    dataAbsentReason = FhirR4CodeableConcept.fromJson(reader);
                } else if ("interpretation".equals(fieldName)) {
                    interpretation = reader.readArray(reader1 -> FhirR4CodeableConcept.fromJson(reader1));
                } else if ("note".equals(fieldName)) {
                    note = reader.readArray(reader1 -> FhirR4Annotation.fromJson(reader1));
                } else if ("bodySite".equals(fieldName)) {
                    bodySite = FhirR4CodeableConcept.fromJson(reader);
                } else if ("method".equals(fieldName)) {
                    method = FhirR4CodeableConcept.fromJson(reader);
                } else if ("referenceRange".equals(fieldName)) {
                    referenceRange = reader.readArray(reader1 -> FhirR4ObservationReferenceRange.fromJson(reader1));
                } else if ("hasMember".equals(fieldName)) {
                    hasMember = reader.readArray(reader1 -> FhirR4Reference.fromJson(reader1));
                } else if ("derivedFrom".equals(fieldName)) {
                    derivedFrom = reader.readArray(reader1 -> FhirR4Reference.fromJson(reader1));
                } else if ("component".equals(fieldName)) {
                    component = reader.readArray(reader1 -> FhirR4ObservationComponent.fromJson(reader1));
                } else {
                    if (additionalProperties == null) {
                        additionalProperties = new LinkedHashMap<>();
                    }
                    additionalProperties.put(fieldName, reader.readUntyped());
                }
            }
            FhirR4Observation deserializedFhirR4Observation = new FhirR4Observation(resourceType, status, code);
            deserializedFhirR4Observation.setId(id);
            deserializedFhirR4Observation.setMeta(meta);
            deserializedFhirR4Observation.setImplicitRules(implicitRules);
            deserializedFhirR4Observation.setLanguage(language);
            deserializedFhirR4Observation.setText(text);
            deserializedFhirR4Observation.setContained(contained);
            deserializedFhirR4Observation.setExtension(extension);
            deserializedFhirR4Observation.setModifierExtension(modifierExtension);
            deserializedFhirR4Observation.resourceType = resourceType;
            deserializedFhirR4Observation.identifier = identifier;
            deserializedFhirR4Observation.category = category;
            deserializedFhirR4Observation.subject = subject;
            deserializedFhirR4Observation.encounter = encounter;
            deserializedFhirR4Observation.effectiveDateTime = effectiveDateTime;
            deserializedFhirR4Observation.effectivePeriod = effectivePeriod;
            deserializedFhirR4Observation.effectiveInstant = effectiveInstant;
            deserializedFhirR4Observation.issued = issued;
            deserializedFhirR4Observation.valueQuantity = valueQuantity;
            deserializedFhirR4Observation.valueCodeableConcept = valueCodeableConcept;
            deserializedFhirR4Observation.valueString = valueString;
            deserializedFhirR4Observation.valueBoolean = valueBoolean;
            deserializedFhirR4Observation.valueInteger = valueInteger;
            deserializedFhirR4Observation.valueRange = valueRange;
            deserializedFhirR4Observation.valueRatio = valueRatio;
            deserializedFhirR4Observation.valueSampledData = valueSampledData;
            deserializedFhirR4Observation.valueTime = valueTime;
            deserializedFhirR4Observation.valueDateTime = valueDateTime;
            deserializedFhirR4Observation.valuePeriod = valuePeriod;
            deserializedFhirR4Observation.dataAbsentReason = dataAbsentReason;
            deserializedFhirR4Observation.interpretation = interpretation;
            deserializedFhirR4Observation.note = note;
            deserializedFhirR4Observation.bodySite = bodySite;
            deserializedFhirR4Observation.method = method;
            deserializedFhirR4Observation.referenceRange = referenceRange;
            deserializedFhirR4Observation.hasMember = hasMember;
            deserializedFhirR4Observation.derivedFrom = derivedFrom;
            deserializedFhirR4Observation.component = component;
            deserializedFhirR4Observation.setAdditionalProperties(additionalProperties);
            return deserializedFhirR4Observation;
        });
    }