예제 #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 DeployedServicePackageInfo GetFromJsonProperties(JsonReader reader)
        {
            var name    = default(string);
            var version = default(string);
            var status  = default(DeploymentStatus?);
            var servicePackageActivationId = default(string);

            do
            {
                var propName = reader.ReadPropertyName();
                if (string.Compare("Name", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    name = reader.ReadValueAsString();
                }
                else if (string.Compare("Version", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    version = reader.ReadValueAsString();
                }
                else if (string.Compare("Status", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    status = DeploymentStatusConverter.Deserialize(reader);
                }
                else if (string.Compare("ServicePackageActivationId", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    servicePackageActivationId = reader.ReadValueAsString();
                }
                else
                {
                    reader.SkipPropertyValue();
                }
            }while (reader.TokenType != JsonToken.EndObject);

            return(new DeployedServicePackageInfo(
                       name: name,
                       version: version,
                       status: status,
                       servicePackageActivationId: servicePackageActivationId));
        }
        /// <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 DeployedCodePackageInfo GetFromJsonProperties(JsonReader reader)
        {
            var name                       = default(string);
            var version                    = default(string);
            var serviceManifestName        = default(string);
            var servicePackageActivationId = default(string);
            var hostType                   = default(HostType?);
            var hostIsolationMode          = default(HostIsolationMode?);
            var status                     = default(DeploymentStatus?);
            var runFrequencyInterval       = default(string);
            var setupEntryPoint            = default(CodePackageEntryPoint);
            var mainEntryPoint             = default(CodePackageEntryPoint);

            do
            {
                var propName = reader.ReadPropertyName();
                if (string.Compare("Name", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    name = reader.ReadValueAsString();
                }
                else if (string.Compare("Version", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    version = reader.ReadValueAsString();
                }
                else if (string.Compare("ServiceManifestName", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    serviceManifestName = reader.ReadValueAsString();
                }
                else if (string.Compare("ServicePackageActivationId", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    servicePackageActivationId = reader.ReadValueAsString();
                }
                else if (string.Compare("HostType", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    hostType = HostTypeConverter.Deserialize(reader);
                }
                else if (string.Compare("HostIsolationMode", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    hostIsolationMode = HostIsolationModeConverter.Deserialize(reader);
                }
                else if (string.Compare("Status", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    status = DeploymentStatusConverter.Deserialize(reader);
                }
                else if (string.Compare("RunFrequencyInterval", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    runFrequencyInterval = reader.ReadValueAsString();
                }
                else if (string.Compare("SetupEntryPoint", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    setupEntryPoint = CodePackageEntryPointConverter.Deserialize(reader);
                }
                else if (string.Compare("MainEntryPoint", propName, StringComparison.OrdinalIgnoreCase) == 0)
                {
                    mainEntryPoint = CodePackageEntryPointConverter.Deserialize(reader);
                }
                else
                {
                    reader.SkipPropertyValue();
                }
            }while (reader.TokenType != JsonToken.EndObject);

            return(new DeployedCodePackageInfo(
                       name: name,
                       version: version,
                       serviceManifestName: serviceManifestName,
                       servicePackageActivationId: servicePackageActivationId,
                       hostType: hostType,
                       hostIsolationMode: hostIsolationMode,
                       status: status,
                       runFrequencyInterval: runFrequencyInterval,
                       setupEntryPoint: setupEntryPoint,
                       mainEntryPoint: mainEntryPoint));
        }