public static ModernUsageDetailProperties fromJson()

in sdk/consumption/azure-resourcemanager-consumption/src/main/java/com/azure/resourcemanager/consumption/fluent/models/ModernUsageDetailProperties.java [1119:1298]


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

                if ("billingAccountId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.billingAccountId = reader.getString();
                } else if ("effectivePrice".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.effectivePrice
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("pricingModel".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.pricingModel
                        = PricingModelType.fromString(reader.getString());
                } else if ("billingAccountName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.billingAccountName = reader.getString();
                } else if ("billingPeriodStartDate".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.billingPeriodStartDate = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("billingPeriodEndDate".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.billingPeriodEndDate = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("billingProfileId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.billingProfileId = reader.getString();
                } else if ("billingProfileName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.billingProfileName = reader.getString();
                } else if ("subscriptionGuid".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.subscriptionGuid = reader.getString();
                } else if ("subscriptionName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.subscriptionName = reader.getString();
                } else if ("date".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.date = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("product".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.product = reader.getString();
                } else if ("meterId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.meterId
                        = reader.getNullable(nonNullReader -> UUID.fromString(nonNullReader.getString()));
                } else if ("meterName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.meterName = reader.getString();
                } else if ("meterRegion".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.meterRegion = reader.getString();
                } else if ("meterCategory".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.meterCategory = reader.getString();
                } else if ("meterSubCategory".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.meterSubCategory = reader.getString();
                } else if ("serviceFamily".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.serviceFamily = reader.getString();
                } else if ("quantity".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.quantity
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("unitOfMeasure".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.unitOfMeasure = reader.getString();
                } else if ("instanceName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.instanceName = reader.getString();
                } else if ("costInUSD".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.costInUsd
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("unitPrice".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.unitPrice
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("billingCurrencyCode".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.billingCurrencyCode = reader.getString();
                } else if ("resourceLocation".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.resourceLocation = reader.getString();
                } else if ("consumedService".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.consumedService = reader.getString();
                } else if ("serviceInfo1".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.serviceInfo1 = reader.getString();
                } else if ("serviceInfo2".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.serviceInfo2 = reader.getString();
                } else if ("additionalInfo".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.additionalInfo = reader.getString();
                } else if ("invoiceSectionId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.invoiceSectionId = reader.getString();
                } else if ("invoiceSectionName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.invoiceSectionName = reader.getString();
                } else if ("costCenter".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.costCenter = reader.getString();
                } else if ("resourceGroup".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.resourceGroup = reader.getString();
                } else if ("reservationId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.reservationId = reader.getString();
                } else if ("reservationName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.reservationName = reader.getString();
                } else if ("productOrderId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.productOrderId = reader.getString();
                } else if ("productOrderName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.productOrderName = reader.getString();
                } else if ("isAzureCreditEligible".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.isAzureCreditEligible
                        = reader.getNullable(JsonReader::getBoolean);
                } else if ("term".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.term = reader.getString();
                } else if ("publisherName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.publisherName = reader.getString();
                } else if ("publisherType".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.publisherType = reader.getString();
                } else if ("chargeType".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.chargeType = reader.getString();
                } else if ("frequency".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.frequency = reader.getString();
                } else if ("costInBillingCurrency".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.costInBillingCurrency
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("costInPricingCurrency".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.costInPricingCurrency
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("exchangeRate".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.exchangeRate = reader.getString();
                } else if ("exchangeRateDate".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.exchangeRateDate = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("invoiceId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.invoiceId = reader.getString();
                } else if ("previousInvoiceId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.previousInvoiceId = reader.getString();
                } else if ("pricingCurrencyCode".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.pricingCurrencyCode = reader.getString();
                } else if ("productIdentifier".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.productIdentifier = reader.getString();
                } else if ("resourceLocationNormalized".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.resourceLocationNormalized = reader.getString();
                } else if ("servicePeriodStartDate".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.servicePeriodStartDate = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("servicePeriodEndDate".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.servicePeriodEndDate = reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
                } else if ("customerTenantId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.customerTenantId = reader.getString();
                } else if ("customerName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.customerName = reader.getString();
                } else if ("partnerTenantId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.partnerTenantId = reader.getString();
                } else if ("partnerName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.partnerName = reader.getString();
                } else if ("resellerMpnId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.resellerMpnId = reader.getString();
                } else if ("resellerName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.resellerName = reader.getString();
                } else if ("publisherId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.publisherId = reader.getString();
                } else if ("marketPrice".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.marketPrice
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("exchangeRatePricingToBilling".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.exchangeRatePricingToBilling
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("paygCostInBillingCurrency".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.paygCostInBillingCurrency
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("paygCostInUSD".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.paygCostInUsd
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("partnerEarnedCreditRate".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.partnerEarnedCreditRate
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("partnerEarnedCreditApplied".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.partnerEarnedCreditApplied = reader.getString();
                } else if ("payGPrice".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.payGPrice
                        = reader.getNullable(nonNullReader -> new BigDecimal(nonNullReader.getString()));
                } else if ("benefitId".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.benefitId = reader.getString();
                } else if ("benefitName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.benefitName = reader.getString();
                } else if ("provider".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.provider = reader.getString();
                } else if ("costAllocationRuleName".equals(fieldName)) {
                    deserializedModernUsageDetailProperties.costAllocationRuleName = reader.getString();
                } else {
                    reader.skipChildren();
                }
            }

            return deserializedModernUsageDetailProperties;
        });
    }