Exemple #1
0
        /// <summary>
        /// Gets the object from Json properties.
        /// </summary>
        /// <param name="reader">The <see cref="T: Newtonsoft.Json.JsonReader" /> to read from, reader must be placed at first property.</param>
        /// <returns>The object Value.</returns>
        internal static UpdateClusterUpgradeDescription GetFromJsonProperties(JsonReader reader)
        {
            var upgradeKind                 = default(UpgradeType?);
            var updateDescription           = default(RollingUpgradeUpdateDescription);
            var clusterHealthPolicy         = default(ClusterHealthPolicy);
            var enableDeltaHealthEvaluation = default(bool?);
            var clusterUpgradeHealthPolicy  = default(ClusterUpgradeHealthPolicyObject);
            var applicationHealthPolicyMap  = default(ApplicationHealthPolicies);

            do
            {
                var propName = reader.ReadPropertyName();
                if (string.Compare("UpgradeKind", propName, StringComparison.Ordinal) == 0)
                {
                    upgradeKind = UpgradeTypeConverter.Deserialize(reader);
                }
                else if (string.Compare("UpdateDescription", propName, StringComparison.Ordinal) == 0)
                {
                    updateDescription = RollingUpgradeUpdateDescriptionConverter.Deserialize(reader);
                }
                else if (string.Compare("ClusterHealthPolicy", propName, StringComparison.Ordinal) == 0)
                {
                    clusterHealthPolicy = ClusterHealthPolicyConverter.Deserialize(reader);
                }
                else if (string.Compare("EnableDeltaHealthEvaluation", propName, StringComparison.Ordinal) == 0)
                {
                    enableDeltaHealthEvaluation = reader.ReadValueAsBool();
                }
                else if (string.Compare("ClusterUpgradeHealthPolicy", propName, StringComparison.Ordinal) == 0)
                {
                    clusterUpgradeHealthPolicy = ClusterUpgradeHealthPolicyObjectConverter.Deserialize(reader);
                }
                else if (string.Compare("ApplicationHealthPolicyMap", propName, StringComparison.Ordinal) == 0)
                {
                    applicationHealthPolicyMap = ApplicationHealthPoliciesConverter.Deserialize(reader);
                }
                else
                {
                    reader.SkipPropertyValue();
                }
            }while (reader.TokenType != JsonToken.EndObject);

            return(new UpdateClusterUpgradeDescription(
                       upgradeKind: upgradeKind,
                       updateDescription: updateDescription,
                       clusterHealthPolicy: clusterHealthPolicy,
                       enableDeltaHealthEvaluation: enableDeltaHealthEvaluation,
                       clusterUpgradeHealthPolicy: clusterUpgradeHealthPolicy,
                       applicationHealthPolicyMap: applicationHealthPolicyMap));
        }
        /// <summary>
        /// Gets the object from Json properties.
        /// </summary>
        /// <param name="reader">The <see cref="T: Newtonsoft.Json.JsonReader" /> to read from, reader must be placed at first property.</param>
        /// <returns>The object Value.</returns>
        internal static ClusterHealthChunkQueryDescription GetFromJsonProperties(JsonReader reader)
        {
            var nodeFilters               = default(IEnumerable <NodeHealthStateFilter>);
            var applicationFilters        = default(IEnumerable <ApplicationHealthStateFilter>);
            var clusterHealthPolicy       = default(ClusterHealthPolicy);
            var applicationHealthPolicies = default(ApplicationHealthPolicies);

            do
            {
                var propName = reader.ReadPropertyName();
                if (string.Compare("NodeFilters", propName, StringComparison.Ordinal) == 0)
                {
                    nodeFilters = reader.ReadList(NodeHealthStateFilterConverter.Deserialize);
                }
                else if (string.Compare("ApplicationFilters", propName, StringComparison.Ordinal) == 0)
                {
                    applicationFilters = reader.ReadList(ApplicationHealthStateFilterConverter.Deserialize);
                }
                else if (string.Compare("ClusterHealthPolicy", propName, StringComparison.Ordinal) == 0)
                {
                    clusterHealthPolicy = ClusterHealthPolicyConverter.Deserialize(reader);
                }
                else if (string.Compare("ApplicationHealthPolicies", propName, StringComparison.Ordinal) == 0)
                {
                    applicationHealthPolicies = ApplicationHealthPoliciesConverter.Deserialize(reader);
                }
                else
                {
                    reader.SkipPropertyValue();
                }
            }while (reader.TokenType != JsonToken.EndObject);

            return(new ClusterHealthChunkQueryDescription(
                       nodeFilters: nodeFilters,
                       applicationFilters: applicationFilters,
                       clusterHealthPolicy: clusterHealthPolicy,
                       applicationHealthPolicies: applicationHealthPolicies));
        }
        /// <summary>
        /// Gets the object from Json properties.
        /// </summary>
        /// <param name="reader">The <see cref="T: Newtonsoft.Json.JsonReader" /> to read from, reader must be placed at first property.</param>
        /// <returns>The object Value.</returns>
        internal static StartClusterUpgradeDescription GetFromJsonProperties(JsonReader reader)
        {
            var codeVersion        = default(string);
            var configVersion      = default(string);
            var upgradeKind        = default(UpgradeKind?);
            var rollingUpgradeMode = default(UpgradeMode?);
            var upgradeReplicaSetCheckTimeoutInSeconds = default(long?);
            var forceRestart                = default(bool?);
            var monitoringPolicy            = default(MonitoringPolicyDescription);
            var clusterHealthPolicy         = default(ClusterHealthPolicy);
            var enableDeltaHealthEvaluation = default(bool?);
            var clusterUpgradeHealthPolicy  = default(ClusterUpgradeHealthPolicyObject);
            var applicationHealthPolicyMap  = default(ApplicationHealthPolicies);

            do
            {
                var propName = reader.ReadPropertyName();
                if (string.Compare("CodeVersion", propName, StringComparison.Ordinal) == 0)
                {
                    codeVersion = reader.ReadValueAsString();
                }
                else if (string.Compare("ConfigVersion", propName, StringComparison.Ordinal) == 0)
                {
                    configVersion = reader.ReadValueAsString();
                }
                else if (string.Compare("UpgradeKind", propName, StringComparison.Ordinal) == 0)
                {
                    upgradeKind = UpgradeKindConverter.Deserialize(reader);
                }
                else if (string.Compare("RollingUpgradeMode", propName, StringComparison.Ordinal) == 0)
                {
                    rollingUpgradeMode = UpgradeModeConverter.Deserialize(reader);
                }
                else if (string.Compare("UpgradeReplicaSetCheckTimeoutInSeconds", propName, StringComparison.Ordinal) == 0)
                {
                    upgradeReplicaSetCheckTimeoutInSeconds = reader.ReadValueAsLong();
                }
                else if (string.Compare("ForceRestart", propName, StringComparison.Ordinal) == 0)
                {
                    forceRestart = reader.ReadValueAsBool();
                }
                else if (string.Compare("MonitoringPolicy", propName, StringComparison.Ordinal) == 0)
                {
                    monitoringPolicy = MonitoringPolicyDescriptionConverter.Deserialize(reader);
                }
                else if (string.Compare("ClusterHealthPolicy", propName, StringComparison.Ordinal) == 0)
                {
                    clusterHealthPolicy = ClusterHealthPolicyConverter.Deserialize(reader);
                }
                else if (string.Compare("EnableDeltaHealthEvaluation", propName, StringComparison.Ordinal) == 0)
                {
                    enableDeltaHealthEvaluation = reader.ReadValueAsBool();
                }
                else if (string.Compare("ClusterUpgradeHealthPolicy", propName, StringComparison.Ordinal) == 0)
                {
                    clusterUpgradeHealthPolicy = ClusterUpgradeHealthPolicyObjectConverter.Deserialize(reader);
                }
                else if (string.Compare("ApplicationHealthPolicyMap", propName, StringComparison.Ordinal) == 0)
                {
                    applicationHealthPolicyMap = ApplicationHealthPoliciesConverter.Deserialize(reader);
                }
                else
                {
                    reader.SkipPropertyValue();
                }
            }while (reader.TokenType != JsonToken.EndObject);

            return(new StartClusterUpgradeDescription(
                       codeVersion: codeVersion,
                       configVersion: configVersion,
                       upgradeKind: upgradeKind,
                       rollingUpgradeMode: rollingUpgradeMode,
                       upgradeReplicaSetCheckTimeoutInSeconds: upgradeReplicaSetCheckTimeoutInSeconds,
                       forceRestart: forceRestart,
                       monitoringPolicy: monitoringPolicy,
                       clusterHealthPolicy: clusterHealthPolicy,
                       enableDeltaHealthEvaluation: enableDeltaHealthEvaluation,
                       clusterUpgradeHealthPolicy: clusterUpgradeHealthPolicy,
                       applicationHealthPolicyMap: applicationHealthPolicyMap));
        }
        /// <summary>
        /// Gets the object from Json properties.
        /// </summary>
        /// <param name="reader">The <see cref="T: Newtonsoft.Json.JsonReader" /> to read from, reader must be placed at first property.</param>
        /// <returns>The object Value.</returns>
        internal static ClusterConfigurationUpgradeDescription GetFromJsonProperties(JsonReader reader)
        {
            var clusterConfig                              = default(string);
            var healthCheckRetryTimeout                    = default(TimeSpan?);
            var healthCheckWaitDurationInSeconds           = default(TimeSpan?);
            var healthCheckStableDurationInSeconds         = default(TimeSpan?);
            var upgradeDomainTimeoutInSeconds              = default(TimeSpan?);
            var upgradeTimeoutInSeconds                    = default(TimeSpan?);
            var maxPercentUnhealthyApplications            = default(int?);
            var maxPercentUnhealthyNodes                   = default(int?);
            var maxPercentDeltaUnhealthyNodes              = default(int?);
            var maxPercentUpgradeDomainDeltaUnhealthyNodes = default(int?);
            var applicationHealthPolicies                  = default(ApplicationHealthPolicies);

            do
            {
                var propName = reader.ReadPropertyName();
                if (string.Compare("ClusterConfig", propName, StringComparison.Ordinal) == 0)
                {
                    clusterConfig = reader.ReadValueAsString();
                }
                else if (string.Compare("HealthCheckRetryTimeout", propName, StringComparison.Ordinal) == 0)
                {
                    healthCheckRetryTimeout = reader.ReadValueAsTimeSpan();
                }
                else if (string.Compare("HealthCheckWaitDurationInSeconds", propName, StringComparison.Ordinal) == 0)
                {
                    healthCheckWaitDurationInSeconds = reader.ReadValueAsTimeSpan();
                }
                else if (string.Compare("HealthCheckStableDurationInSeconds", propName, StringComparison.Ordinal) == 0)
                {
                    healthCheckStableDurationInSeconds = reader.ReadValueAsTimeSpan();
                }
                else if (string.Compare("UpgradeDomainTimeoutInSeconds", propName, StringComparison.Ordinal) == 0)
                {
                    upgradeDomainTimeoutInSeconds = reader.ReadValueAsTimeSpan();
                }
                else if (string.Compare("UpgradeTimeoutInSeconds", propName, StringComparison.Ordinal) == 0)
                {
                    upgradeTimeoutInSeconds = reader.ReadValueAsTimeSpan();
                }
                else if (string.Compare("MaxPercentUnhealthyApplications", propName, StringComparison.Ordinal) == 0)
                {
                    maxPercentUnhealthyApplications = reader.ReadValueAsInt();
                }
                else if (string.Compare("MaxPercentUnhealthyNodes", propName, StringComparison.Ordinal) == 0)
                {
                    maxPercentUnhealthyNodes = reader.ReadValueAsInt();
                }
                else if (string.Compare("MaxPercentDeltaUnhealthyNodes", propName, StringComparison.Ordinal) == 0)
                {
                    maxPercentDeltaUnhealthyNodes = reader.ReadValueAsInt();
                }
                else if (string.Compare("MaxPercentUpgradeDomainDeltaUnhealthyNodes", propName, StringComparison.Ordinal) == 0)
                {
                    maxPercentUpgradeDomainDeltaUnhealthyNodes = reader.ReadValueAsInt();
                }
                else if (string.Compare("ApplicationHealthPolicies", propName, StringComparison.Ordinal) == 0)
                {
                    applicationHealthPolicies = ApplicationHealthPoliciesConverter.Deserialize(reader);
                }
                else
                {
                    reader.SkipPropertyValue();
                }
            }while (reader.TokenType != JsonToken.EndObject);

            return(new ClusterConfigurationUpgradeDescription(
                       clusterConfig: clusterConfig,
                       healthCheckRetryTimeout: healthCheckRetryTimeout,
                       healthCheckWaitDurationInSeconds: healthCheckWaitDurationInSeconds,
                       healthCheckStableDurationInSeconds: healthCheckStableDurationInSeconds,
                       upgradeDomainTimeoutInSeconds: upgradeDomainTimeoutInSeconds,
                       upgradeTimeoutInSeconds: upgradeTimeoutInSeconds,
                       maxPercentUnhealthyApplications: maxPercentUnhealthyApplications,
                       maxPercentUnhealthyNodes: maxPercentUnhealthyNodes,
                       maxPercentDeltaUnhealthyNodes: maxPercentDeltaUnhealthyNodes,
                       maxPercentUpgradeDomainDeltaUnhealthyNodes: maxPercentUpgradeDomainDeltaUnhealthyNodes,
                       applicationHealthPolicies: applicationHealthPolicies));
        }