コード例 #1
0
        internal static ConfigServerProperties DeserializeConfigServerProperties(JsonElement element)
        {
            Optional <ConfigServerState>    provisioningState = default;
            Optional <AppPlatformErrorInfo> error             = default;
            Optional <ConfigServerSettings> configServer      = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("provisioningState"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    provisioningState = new ConfigServerState(property.Value.GetString());
                    continue;
                }
                if (property.NameEquals("error"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    error = AppPlatformErrorInfo.DeserializeAppPlatformErrorInfo(property.Value);
                    continue;
                }
                if (property.NameEquals("configServer"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    configServer = ConfigServerSettings.DeserializeConfigServerSettings(property.Value);
                    continue;
                }
            }
            return(new ConfigServerProperties(Optional.ToNullable(provisioningState), error.Value, configServer.Value));
        }
コード例 #2
0
        internal static MonitoringSettingProperties DeserializeMonitoringSettingProperties(JsonElement element)
        {
            Optional <MonitoringSettingState> provisioningState = default;
            Optional <AppPlatformErrorInfo>   error             = default;
            Optional <bool>   traceEnabled = default;
            Optional <string> appInsightsInstrumentationKey = default;
            Optional <double> appInsightsSamplingRate       = default;
            Optional <ApplicationInsightsAgentVersions> appInsightsAgentVersions = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("provisioningState"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    provisioningState = new MonitoringSettingState(property.Value.GetString());
                    continue;
                }
                if (property.NameEquals("error"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    error = AppPlatformErrorInfo.DeserializeAppPlatformErrorInfo(property.Value);
                    continue;
                }
                if (property.NameEquals("traceEnabled"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    traceEnabled = property.Value.GetBoolean();
                    continue;
                }
                if (property.NameEquals("appInsightsInstrumentationKey"))
                {
                    appInsightsInstrumentationKey = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("appInsightsSamplingRate"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    appInsightsSamplingRate = property.Value.GetDouble();
                    continue;
                }
                if (property.NameEquals("appInsightsAgentVersions"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    appInsightsAgentVersions = ApplicationInsightsAgentVersions.DeserializeApplicationInsightsAgentVersions(property.Value);
                    continue;
                }
            }
            return(new MonitoringSettingProperties(Optional.ToNullable(provisioningState), error.Value, Optional.ToNullable(traceEnabled), appInsightsInstrumentationKey.Value, Optional.ToNullable(appInsightsSamplingRate), appInsightsAgentVersions.Value));
        }