public static A2AReplicationDetails fromJson()

in sdk/recoveryservicessiterecovery/azure-resourcemanager-recoveryservicessiterecovery/src/main/java/com/azure/resourcemanager/recoveryservicessiterecovery/models/A2AReplicationDetails.java [1487:1636]


    public static A2AReplicationDetails fromJson(JsonReader jsonReader) throws IOException {
        return jsonReader.readObject(reader -> {
            A2AReplicationDetails deserializedA2AReplicationDetails = new A2AReplicationDetails();
            while (reader.nextToken() != JsonToken.END_OBJECT) {
                String fieldName = reader.getFieldName();
                reader.nextToken();

                if ("instanceType".equals(fieldName)) {
                    deserializedA2AReplicationDetails.instanceType = reader.getString();
                } else if ("fabricObjectId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.fabricObjectId = reader.getString();
                } else if ("initialPrimaryZone".equals(fieldName)) {
                    deserializedA2AReplicationDetails.initialPrimaryZone = reader.getString();
                } else if ("initialPrimaryFabricLocation".equals(fieldName)) {
                    deserializedA2AReplicationDetails.initialPrimaryFabricLocation = reader.getString();
                } else if ("initialRecoveryZone".equals(fieldName)) {
                    deserializedA2AReplicationDetails.initialRecoveryZone = reader.getString();
                } else if ("initialPrimaryExtendedLocation".equals(fieldName)) {
                    deserializedA2AReplicationDetails.initialPrimaryExtendedLocation
                        = ExtendedLocation.fromJson(reader);
                } else if ("initialRecoveryExtendedLocation".equals(fieldName)) {
                    deserializedA2AReplicationDetails.initialRecoveryExtendedLocation
                        = ExtendedLocation.fromJson(reader);
                } else if ("initialRecoveryFabricLocation".equals(fieldName)) {
                    deserializedA2AReplicationDetails.initialRecoveryFabricLocation = reader.getString();
                } else if ("multiVmGroupId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.multiVmGroupId = reader.getString();
                } else if ("multiVmGroupName".equals(fieldName)) {
                    deserializedA2AReplicationDetails.multiVmGroupName = reader.getString();
                } else if ("multiVmGroupCreateOption".equals(fieldName)) {
                    deserializedA2AReplicationDetails.multiVmGroupCreateOption
                        = MultiVmGroupCreateOption.fromString(reader.getString());
                } else if ("managementId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.managementId = reader.getString();
                } else if ("protectionClusterId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.protectionClusterId = reader.getString();
                } else if ("isClusterInfraReady".equals(fieldName)) {
                    deserializedA2AReplicationDetails.isClusterInfraReady = reader.getNullable(JsonReader::getBoolean);
                } else if ("protectedDisks".equals(fieldName)) {
                    List<A2AProtectedDiskDetails> protectedDisks
                        = reader.readArray(reader1 -> A2AProtectedDiskDetails.fromJson(reader1));
                    deserializedA2AReplicationDetails.protectedDisks = protectedDisks;
                } else if ("unprotectedDisks".equals(fieldName)) {
                    List<A2AUnprotectedDiskDetails> unprotectedDisks
                        = reader.readArray(reader1 -> A2AUnprotectedDiskDetails.fromJson(reader1));
                    deserializedA2AReplicationDetails.unprotectedDisks = unprotectedDisks;
                } else if ("protectedManagedDisks".equals(fieldName)) {
                    List<A2AProtectedManagedDiskDetails> protectedManagedDisks
                        = reader.readArray(reader1 -> A2AProtectedManagedDiskDetails.fromJson(reader1));
                    deserializedA2AReplicationDetails.protectedManagedDisks = protectedManagedDisks;
                } else if ("recoveryBootDiagStorageAccountId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryBootDiagStorageAccountId = reader.getString();
                } else if ("primaryFabricLocation".equals(fieldName)) {
                    deserializedA2AReplicationDetails.primaryFabricLocation = reader.getString();
                } else if ("recoveryFabricLocation".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryFabricLocation = reader.getString();
                } else if ("osType".equals(fieldName)) {
                    deserializedA2AReplicationDetails.osType = reader.getString();
                } else if ("recoveryAzureVMSize".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryAzureVMSize = reader.getString();
                } else if ("recoveryAzureVMName".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryAzureVMName = reader.getString();
                } else if ("recoveryAzureResourceGroupId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryAzureResourceGroupId = reader.getString();
                } else if ("recoveryCloudService".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryCloudService = reader.getString();
                } else if ("recoveryAvailabilitySet".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryAvailabilitySet = reader.getString();
                } else if ("selectedRecoveryAzureNetworkId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.selectedRecoveryAzureNetworkId = reader.getString();
                } else if ("selectedTfoAzureNetworkId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.selectedTfoAzureNetworkId = reader.getString();
                } else if ("vmNics".equals(fieldName)) {
                    List<VMNicDetails> vmNics = reader.readArray(reader1 -> VMNicDetails.fromJson(reader1));
                    deserializedA2AReplicationDetails.vmNics = vmNics;
                } else if ("vmSyncedConfigDetails".equals(fieldName)) {
                    deserializedA2AReplicationDetails.vmSyncedConfigDetails
                        = AzureToAzureVmSyncedConfigDetails.fromJson(reader);
                } else if ("monitoringPercentageCompletion".equals(fieldName)) {
                    deserializedA2AReplicationDetails.monitoringPercentageCompletion
                        = reader.getNullable(JsonReader::getInt);
                } else if ("monitoringJobType".equals(fieldName)) {
                    deserializedA2AReplicationDetails.monitoringJobType = reader.getString();
                } else if ("lastHeartbeat".equals(fieldName)) {
                    deserializedA2AReplicationDetails.lastHeartbeat = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("agentVersion".equals(fieldName)) {
                    deserializedA2AReplicationDetails.agentVersion = reader.getString();
                } else if ("agentExpiryDate".equals(fieldName)) {
                    deserializedA2AReplicationDetails.agentExpiryDate = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("isReplicationAgentUpdateRequired".equals(fieldName)) {
                    deserializedA2AReplicationDetails.isReplicationAgentUpdateRequired
                        = reader.getNullable(JsonReader::getBoolean);
                } else if ("agentCertificateExpiryDate".equals(fieldName)) {
                    deserializedA2AReplicationDetails.agentCertificateExpiryDate = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("isReplicationAgentCertificateUpdateRequired".equals(fieldName)) {
                    deserializedA2AReplicationDetails.isReplicationAgentCertificateUpdateRequired
                        = reader.getNullable(JsonReader::getBoolean);
                } else if ("recoveryFabricObjectId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryFabricObjectId = reader.getString();
                } else if ("vmProtectionState".equals(fieldName)) {
                    deserializedA2AReplicationDetails.vmProtectionState = reader.getString();
                } else if ("vmProtectionStateDescription".equals(fieldName)) {
                    deserializedA2AReplicationDetails.vmProtectionStateDescription = reader.getString();
                } else if ("lifecycleId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.lifecycleId = reader.getString();
                } else if ("testFailoverRecoveryFabricObjectId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.testFailoverRecoveryFabricObjectId = reader.getString();
                } else if ("rpoInSeconds".equals(fieldName)) {
                    deserializedA2AReplicationDetails.rpoInSeconds = reader.getNullable(JsonReader::getLong);
                } else if ("lastRpoCalculatedTime".equals(fieldName)) {
                    deserializedA2AReplicationDetails.lastRpoCalculatedTime = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("primaryAvailabilityZone".equals(fieldName)) {
                    deserializedA2AReplicationDetails.primaryAvailabilityZone = reader.getString();
                } else if ("recoveryAvailabilityZone".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryAvailabilityZone = reader.getString();
                } else if ("primaryExtendedLocation".equals(fieldName)) {
                    deserializedA2AReplicationDetails.primaryExtendedLocation = ExtendedLocation.fromJson(reader);
                } else if ("recoveryExtendedLocation".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryExtendedLocation = ExtendedLocation.fromJson(reader);
                } else if ("vmEncryptionType".equals(fieldName)) {
                    deserializedA2AReplicationDetails.vmEncryptionType
                        = VmEncryptionType.fromString(reader.getString());
                } else if ("tfoAzureVMName".equals(fieldName)) {
                    deserializedA2AReplicationDetails.tfoAzureVMName = reader.getString();
                } else if ("recoveryAzureGeneration".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryAzureGeneration = reader.getString();
                } else if ("recoveryProximityPlacementGroupId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryProximityPlacementGroupId = reader.getString();
                } else if ("autoProtectionOfDataDisk".equals(fieldName)) {
                    deserializedA2AReplicationDetails.autoProtectionOfDataDisk
                        = AutoProtectionOfDataDisk.fromString(reader.getString());
                } else if ("recoveryVirtualMachineScaleSetId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryVirtualMachineScaleSetId = reader.getString();
                } else if ("recoveryCapacityReservationGroupId".equals(fieldName)) {
                    deserializedA2AReplicationDetails.recoveryCapacityReservationGroupId = reader.getString();
                } else if ("churnOptionSelected".equals(fieldName)) {
                    deserializedA2AReplicationDetails.churnOptionSelected
                        = ChurnOptionSelected.fromString(reader.getString());
                } else {
                    reader.skipChildren();
                }
            }

            return deserializedA2AReplicationDetails;
        });
    }