internal static AssetConversion DeserializeAssetConversion(JsonElement element) { string id = default; AssetConversionOptions settings = default; Optional <AssetConversionOutput> output = default; RemoteRenderingServiceError error = default; AssetConversionStatus status = default; DateTimeOffset creationTime = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("settings")) { settings = AssetConversionOptions.DeserializeAssetConversionOptions(property.Value); continue; } if (property.NameEquals("output")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } output = AssetConversionOutput.DeserializeAssetConversionOutput(property.Value); continue; } if (property.NameEquals("error")) { if (property.Value.ValueKind == JsonValueKind.Null) { error = null; continue; } error = RemoteRenderingServiceError.DeserializeRemoteRenderingServiceError(property.Value); continue; } if (property.NameEquals("status")) { status = new AssetConversionStatus(property.Value.GetString()); continue; } if (property.NameEquals("creationTime")) { creationTime = property.Value.GetDateTimeOffset("O"); continue; } } return(new AssetConversion(id, settings, output.Value, error, status, creationTime)); }
internal static RenderingSession DeserializeRenderingSession(JsonElement element) { string id = default; Optional <int> arrInspectorPort = default; Optional <int> handshakePort = default; Optional <int> elapsedTimeMinutes = default; Optional <string> hostname = default; Optional <int> maxLeaseTimeMinutes = default; RenderingServerSize size = default; RenderingSessionStatus status = default; Optional <float> teraflops = default; Optional <RemoteRenderingServiceError> error = default; Optional <DateTimeOffset> creationTime = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("arrInspectorPort")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } arrInspectorPort = property.Value.GetInt32(); continue; } if (property.NameEquals("handshakePort")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } handshakePort = property.Value.GetInt32(); continue; } if (property.NameEquals("elapsedTimeMinutes")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } elapsedTimeMinutes = property.Value.GetInt32(); continue; } if (property.NameEquals("hostname")) { hostname = property.Value.GetString(); continue; } if (property.NameEquals("maxLeaseTimeMinutes")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } maxLeaseTimeMinutes = property.Value.GetInt32(); continue; } if (property.NameEquals("size")) { size = new RenderingServerSize(property.Value.GetString()); continue; } if (property.NameEquals("status")) { status = new RenderingSessionStatus(property.Value.GetString()); continue; } if (property.NameEquals("teraflops")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } teraflops = property.Value.GetSingle(); continue; } if (property.NameEquals("error")) { if (property.Value.ValueKind == JsonValueKind.Null) { error = null; continue; } error = RemoteRenderingServiceError.DeserializeRemoteRenderingServiceError(property.Value); continue; } if (property.NameEquals("creationTime")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } creationTime = property.Value.GetDateTimeOffset("O"); continue; } } return(new RenderingSession(id, Optional.ToNullable(arrInspectorPort), Optional.ToNullable(handshakePort), Optional.ToNullable(elapsedTimeMinutes), hostname.Value, Optional.ToNullable(maxLeaseTimeMinutes), size, status, Optional.ToNullable(teraflops), error.Value, Optional.ToNullable(creationTime))); }