internal CloudJob(string id, string displayName, bool?usesTaskDependencies, string url, string eTag, DateTimeOffset?lastModified, DateTimeOffset?creationTime, JobState?state, DateTimeOffset?stateTransitionTime, JobState?previousState, DateTimeOffset?previousStateTransitionTime, int?priority, JobConstraints constraints, JobManagerTask jobManagerTask, JobPreparationTask jobPreparationTask, JobReleaseTask jobReleaseTask, IReadOnlyList <EnvironmentSetting> commonEnvironmentSettings, PoolInformation poolInfo, OnAllTasksComplete?onAllTasksComplete, OnTaskFailure?onTaskFailure, JobNetworkConfiguration networkConfiguration, IReadOnlyList <MetadataItem> metadata, JobExecutionInformation executionInfo, JobStatistics stats) { Id = id; DisplayName = displayName; UsesTaskDependencies = usesTaskDependencies; Url = url; ETag = eTag; LastModified = lastModified; CreationTime = creationTime; State = state; StateTransitionTime = stateTransitionTime; PreviousState = previousState; PreviousStateTransitionTime = previousStateTransitionTime; Priority = priority; Constraints = constraints; JobManagerTask = jobManagerTask; JobPreparationTask = jobPreparationTask; JobReleaseTask = jobReleaseTask; CommonEnvironmentSettings = commonEnvironmentSettings; PoolInfo = poolInfo; OnAllTasksComplete = onAllTasksComplete; OnTaskFailure = onTaskFailure; NetworkConfiguration = networkConfiguration; Metadata = metadata; ExecutionInfo = executionInfo; Stats = stats; }
internal JobSpecification(int?priority, string displayName, bool?usesTaskDependencies, OnAllTasksComplete?onAllTasksComplete, OnTaskFailure?onTaskFailure, JobNetworkConfiguration networkConfiguration, JobConstraints constraints, JobManagerTask jobManagerTask, JobPreparationTask jobPreparationTask, JobReleaseTask jobReleaseTask, IList <EnvironmentSetting> commonEnvironmentSettings, PoolInformation poolInfo, IList <MetadataItem> metadata) { Priority = priority; DisplayName = displayName; UsesTaskDependencies = usesTaskDependencies; OnAllTasksComplete = onAllTasksComplete; OnTaskFailure = onTaskFailure; NetworkConfiguration = networkConfiguration; Constraints = constraints; JobManagerTask = jobManagerTask; JobPreparationTask = jobPreparationTask; JobReleaseTask = jobReleaseTask; CommonEnvironmentSettings = commonEnvironmentSettings; PoolInfo = poolInfo; Metadata = metadata; }
internal static JobSpecification DeserializeJobSpecification(JsonElement element) { int? priority = default; string displayName = default; bool? usesTaskDependencies = default; OnAllTasksComplete? onAllTasksComplete = default; OnTaskFailure? onTaskFailure = default; JobNetworkConfiguration networkConfiguration = default; JobConstraints constraints = default; JobManagerTask jobManagerTask = default; JobPreparationTask jobPreparationTask = default; JobReleaseTask jobReleaseTask = default; IList <EnvironmentSetting> commonEnvironmentSettings = default; PoolInformation poolInfo = default; IList <MetadataItem> metadata = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("priority")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } priority = property.Value.GetInt32(); continue; } if (property.NameEquals("displayName")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } displayName = property.Value.GetString(); continue; } if (property.NameEquals("usesTaskDependencies")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } usesTaskDependencies = property.Value.GetBoolean(); continue; } if (property.NameEquals("onAllTasksComplete")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } onAllTasksComplete = property.Value.GetString().ToOnAllTasksComplete(); continue; } if (property.NameEquals("onTaskFailure")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } onTaskFailure = property.Value.GetString().ToOnTaskFailure(); continue; } if (property.NameEquals("networkConfiguration")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } networkConfiguration = JobNetworkConfiguration.DeserializeJobNetworkConfiguration(property.Value); continue; } if (property.NameEquals("constraints")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } constraints = JobConstraints.DeserializeJobConstraints(property.Value); continue; } if (property.NameEquals("jobManagerTask")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } jobManagerTask = JobManagerTask.DeserializeJobManagerTask(property.Value); continue; } if (property.NameEquals("jobPreparationTask")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } jobPreparationTask = JobPreparationTask.DeserializeJobPreparationTask(property.Value); continue; } if (property.NameEquals("jobReleaseTask")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } jobReleaseTask = JobReleaseTask.DeserializeJobReleaseTask(property.Value); continue; } if (property.NameEquals("commonEnvironmentSettings")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <EnvironmentSetting> array = new List <EnvironmentSetting>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(EnvironmentSetting.DeserializeEnvironmentSetting(item)); } commonEnvironmentSettings = array; continue; } if (property.NameEquals("poolInfo")) { poolInfo = PoolInformation.DeserializePoolInformation(property.Value); continue; } if (property.NameEquals("metadata")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <MetadataItem> array = new List <MetadataItem>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(MetadataItem.DeserializeMetadataItem(item)); } metadata = array; continue; } } return(new JobSpecification(priority, displayName, usesTaskDependencies, onAllTasksComplete, onTaskFailure, networkConfiguration, constraints, jobManagerTask, jobPreparationTask, jobReleaseTask, commonEnvironmentSettings, poolInfo, metadata)); }
internal static CloudJob DeserializeCloudJob(JsonElement element) { string id = default; string displayName = default; bool? usesTaskDependencies = default; string url = default; string eTag = default; DateTimeOffset? lastModified = default; DateTimeOffset? creationTime = default; JobState? state = default; DateTimeOffset? stateTransitionTime = default; JobState? previousState = default; DateTimeOffset? previousStateTransitionTime = default; int? priority = default; JobConstraints constraints = default; JobManagerTask jobManagerTask = default; JobPreparationTask jobPreparationTask = default; JobReleaseTask jobReleaseTask = default; IReadOnlyList <EnvironmentSetting> commonEnvironmentSettings = default; PoolInformation poolInfo = default; OnAllTasksComplete? onAllTasksComplete = default; OnTaskFailure? onTaskFailure = default; JobNetworkConfiguration networkConfiguration = default; IReadOnlyList <MetadataItem> metadata = default; JobExecutionInformation executionInfo = default; JobStatistics stats = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("id")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } id = property.Value.GetString(); continue; } if (property.NameEquals("displayName")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } displayName = property.Value.GetString(); continue; } if (property.NameEquals("usesTaskDependencies")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } usesTaskDependencies = property.Value.GetBoolean(); continue; } if (property.NameEquals("url")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } url = property.Value.GetString(); continue; } if (property.NameEquals("eTag")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } eTag = property.Value.GetString(); continue; } if (property.NameEquals("lastModified")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } lastModified = property.Value.GetDateTimeOffset("S"); continue; } if (property.NameEquals("creationTime")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } creationTime = property.Value.GetDateTimeOffset("S"); continue; } if (property.NameEquals("state")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } state = property.Value.GetString().ToJobState(); continue; } if (property.NameEquals("stateTransitionTime")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } stateTransitionTime = property.Value.GetDateTimeOffset("S"); continue; } if (property.NameEquals("previousState")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } previousState = property.Value.GetString().ToJobState(); continue; } if (property.NameEquals("previousStateTransitionTime")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } previousStateTransitionTime = property.Value.GetDateTimeOffset("S"); continue; } if (property.NameEquals("priority")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } priority = property.Value.GetInt32(); continue; } if (property.NameEquals("constraints")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } constraints = JobConstraints.DeserializeJobConstraints(property.Value); continue; } if (property.NameEquals("jobManagerTask")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } jobManagerTask = JobManagerTask.DeserializeJobManagerTask(property.Value); continue; } if (property.NameEquals("jobPreparationTask")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } jobPreparationTask = JobPreparationTask.DeserializeJobPreparationTask(property.Value); continue; } if (property.NameEquals("jobReleaseTask")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } jobReleaseTask = JobReleaseTask.DeserializeJobReleaseTask(property.Value); continue; } if (property.NameEquals("commonEnvironmentSettings")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <EnvironmentSetting> array = new List <EnvironmentSetting>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(EnvironmentSetting.DeserializeEnvironmentSetting(item)); } commonEnvironmentSettings = array; continue; } if (property.NameEquals("poolInfo")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } poolInfo = PoolInformation.DeserializePoolInformation(property.Value); continue; } if (property.NameEquals("onAllTasksComplete")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } onAllTasksComplete = property.Value.GetString().ToOnAllTasksComplete(); continue; } if (property.NameEquals("onTaskFailure")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } onTaskFailure = property.Value.GetString().ToOnTaskFailure(); continue; } if (property.NameEquals("networkConfiguration")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } networkConfiguration = JobNetworkConfiguration.DeserializeJobNetworkConfiguration(property.Value); continue; } if (property.NameEquals("metadata")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <MetadataItem> array = new List <MetadataItem>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(MetadataItem.DeserializeMetadataItem(item)); } metadata = array; continue; } if (property.NameEquals("executionInfo")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } executionInfo = JobExecutionInformation.DeserializeJobExecutionInformation(property.Value); continue; } if (property.NameEquals("stats")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } stats = JobStatistics.DeserializeJobStatistics(property.Value); continue; } } return(new CloudJob(id, displayName, usesTaskDependencies, url, eTag, lastModified, creationTime, state, stateTransitionTime, previousState, previousStateTransitionTime, priority, constraints, jobManagerTask, jobPreparationTask, jobReleaseTask, commonEnvironmentSettings, poolInfo, onAllTasksComplete, onTaskFailure, networkConfiguration, metadata, executionInfo, stats)); }