Пример #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 ApplicationUpgradeUpdateDescription GetFromJsonProperties(JsonReader reader)
        {
            var name                    = default(ApplicationName);
            var upgradeKind             = default(UpgradeKind?);
            var applicationHealthPolicy = default(ApplicationHealthPolicy);
            var updateDescription       = default(RollingUpgradeUpdateDescription);

            do
            {
                var propName = reader.ReadPropertyName();
                if (string.Compare("Name", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    name = ApplicationNameConverter.Deserialize(reader);
                }
                else if (string.Compare("UpgradeKind", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    upgradeKind = UpgradeKindConverter.Deserialize(reader);
                }
                else if (string.Compare("ApplicationHealthPolicy", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    applicationHealthPolicy = ApplicationHealthPolicyConverter.Deserialize(reader);
                }
                else if (string.Compare("UpdateDescription", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    updateDescription = RollingUpgradeUpdateDescriptionConverter.Deserialize(reader);
                }
                else
                {
                    reader.SkipPropertyValue();
                }
            }while (reader.TokenType != JsonToken.EndObject);

            return(new ApplicationUpgradeUpdateDescription(
                       name: name,
                       upgradeKind: upgradeKind,
                       applicationHealthPolicy: applicationHealthPolicy,
                       updateDescription: updateDescription));
        }