File: ResourceJsonSerializerContext.ResourceJson.g.cs
Project: src\src\Aspire.Dashboard\Aspire.Dashboard.csproj (Aspire.Dashboard)
// <auto-generated/>
 
#nullable enable annotations
#nullable disable warnings
 
// Suppress warnings about [Obsolete] member usage in generated code.
#pragma warning disable CS0612, CS0618
 
namespace Aspire.Dashboard.Model.Serialization
{
    internal sealed partial class ResourceJsonSerializerContext
    {
        private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Aspire.Dashboard.Model.Serialization.ResourceJson>? _ResourceJson;
        
        /// <summary>
        /// Defines the source generated JSON serialization contract metadata for a given type.
        /// </summary>
        #nullable disable annotations // Marking the property type as nullable-oblivious.
        public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Aspire.Dashboard.Model.Serialization.ResourceJson> ResourceJson
        #nullable enable annotations
        {
            get => _ResourceJson ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Aspire.Dashboard.Model.Serialization.ResourceJson>)Options.GetTypeInfo(typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson));
        }
        
        private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Aspire.Dashboard.Model.Serialization.ResourceJson> Create_ResourceJson(global::System.Text.Json.JsonSerializerOptions options)
        {
            if (!TryGetTypeInfoForRuntimeCustomConverter<global::Aspire.Dashboard.Model.Serialization.ResourceJson>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Aspire.Dashboard.Model.Serialization.ResourceJson> jsonTypeInfo))
            {
                var objectInfo = new global::System.Text.Json.Serialization.Metadata.JsonObjectInfoValues<global::Aspire.Dashboard.Model.Serialization.ResourceJson>
                {
                    ObjectCreator = () => new global::Aspire.Dashboard.Model.Serialization.ResourceJson(),
                    ObjectWithParameterizedConstructorCreator = null,
                    PropertyMetadataInitializer = _ => ResourceJsonPropInit(options),
                    ConstructorParameterMetadataInitializer = null,
                    ConstructorAttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetConstructor(InstanceMemberBindingFlags, binder: null, global::System.Array.Empty<global::System.Type>(), modifiers: null),
                    SerializeHandler = ResourceJsonSerializeHandler,
                };
                
                jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateObjectInfo<global::Aspire.Dashboard.Model.Serialization.ResourceJson>(options, objectInfo);
                jsonTypeInfo.NumberHandling = null;
            }
        
            jsonTypeInfo.OriginatingResolver = this;
            return jsonTypeInfo;
        }
 
        private static global::System.Text.Json.Serialization.Metadata.JsonPropertyInfo[] ResourceJsonPropInit(global::System.Text.Json.JsonSerializerOptions options)
        {
            var properties = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfo[15];
 
            var info0 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<string>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Name,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Name = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "Name",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("Name", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[0] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<string>(options, info0);
 
            var info1 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<string>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).DisplayName,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).DisplayName = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "DisplayName",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("DisplayName", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[1] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<string>(options, info1);
 
            var info2 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<string>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).ResourceType,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).ResourceType = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "ResourceType",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("ResourceType", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[2] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<string>(options, info2);
 
            var info3 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<string>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Uid,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Uid = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "Uid",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("Uid", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[3] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<string>(options, info3);
 
            var info4 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<string>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).State,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).State = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "State",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("State", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[4] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<string>(options, info4);
 
            var info5 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.DateTime?>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).CreationTimestamp,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).CreationTimestamp = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "CreationTimestamp",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("CreationTimestamp", InstanceMemberBindingFlags, null, typeof(global::System.DateTime?), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[5] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.DateTime?>(options, info5);
 
            var info6 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.DateTime?>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).StartTimestamp,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).StartTimestamp = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "StartTimestamp",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("StartTimestamp", InstanceMemberBindingFlags, null, typeof(global::System.DateTime?), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[6] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.DateTime?>(options, info6);
 
            var info7 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.DateTime?>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).StopTimestamp,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).StopTimestamp = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "StopTimestamp",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("StopTimestamp", InstanceMemberBindingFlags, null, typeof(global::System.DateTime?), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[7] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.DateTime?>(options, info7);
 
            var info8 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<string>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).HealthStatus,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).HealthStatus = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "HealthStatus",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("HealthStatus", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[8] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<string>(options, info8);
 
            var info9 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::Aspire.Dashboard.Model.Serialization.ResourceUrlJson[]>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Urls,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Urls = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "Urls",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("Urls", InstanceMemberBindingFlags, null, typeof(global::Aspire.Dashboard.Model.Serialization.ResourceUrlJson[]), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[9] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::Aspire.Dashboard.Model.Serialization.ResourceUrlJson[]>(options, info9);
 
            var info10 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::Aspire.Dashboard.Model.Serialization.ResourceVolumeJson[]>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Volumes,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Volumes = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "Volumes",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("Volumes", InstanceMemberBindingFlags, null, typeof(global::Aspire.Dashboard.Model.Serialization.ResourceVolumeJson[]), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[10] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::Aspire.Dashboard.Model.Serialization.ResourceVolumeJson[]>(options, info10);
 
            var info11 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::Aspire.Dashboard.Model.Serialization.ResourceEnvironmentVariableJson[]>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Environment,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Environment = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "Environment",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("Environment", InstanceMemberBindingFlags, null, typeof(global::Aspire.Dashboard.Model.Serialization.ResourceEnvironmentVariableJson[]), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[11] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::Aspire.Dashboard.Model.Serialization.ResourceEnvironmentVariableJson[]>(options, info11);
 
            var info12 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::Aspire.Dashboard.Model.Serialization.ResourceHealthReportJson[]>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).HealthReports,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).HealthReports = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "HealthReports",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("HealthReports", InstanceMemberBindingFlags, null, typeof(global::Aspire.Dashboard.Model.Serialization.ResourceHealthReportJson[]), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[12] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::Aspire.Dashboard.Model.Serialization.ResourceHealthReportJson[]>(options, info12);
 
            var info13 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::Aspire.Dashboard.Model.Serialization.ResourcePropertyJson[]>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Properties,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Properties = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "Properties",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("Properties", InstanceMemberBindingFlags, null, typeof(global::Aspire.Dashboard.Model.Serialization.ResourcePropertyJson[]), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[13] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::Aspire.Dashboard.Model.Serialization.ResourcePropertyJson[]>(options, info13);
 
            var info14 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::Aspire.Dashboard.Model.Serialization.ResourceRelationshipJson[]>
            {
                IsProperty = true,
                IsPublic = true,
                IsVirtual = false,
                DeclaringType = typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson),
                Converter = null,
                Getter = static obj => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Relationships,
                Setter = static (obj, value) => ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)obj).Relationships = value!,
                IgnoreCondition = null,
                HasJsonInclude = false,
                IsExtensionData = false,
                NumberHandling = null,
                PropertyName = "Relationships",
                JsonPropertyName = null,
                AttributeProviderFactory = static () => typeof(global::Aspire.Dashboard.Model.Serialization.ResourceJson).GetProperty("Relationships", InstanceMemberBindingFlags, null, typeof(global::Aspire.Dashboard.Model.Serialization.ResourceRelationshipJson[]), global::System.Array.Empty<global::System.Type>(), null),
            };
            
            properties[14] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::Aspire.Dashboard.Model.Serialization.ResourceRelationshipJson[]>(options, info14);
 
            return properties;
        }
 
        // Intentionally not a static method because we create a delegate to it. Invoking delegates to instance
        // methods is almost as fast as virtual calls. Static methods need to go through a shuffle thunk.
        private void ResourceJsonSerializeHandler(global::System.Text.Json.Utf8JsonWriter writer, global::Aspire.Dashboard.Model.Serialization.ResourceJson? value)
        {
            if (value is null)
            {
                writer.WriteNullValue();
                return;
            }
            
            writer.WriteStartObject();
 
            string __value_Name = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).Name;
            if (__value_Name is not null)
            {
                writer.WriteString(PropName_name, __value_Name);
            }
            string __value_DisplayName = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).DisplayName;
            if (__value_DisplayName is not null)
            {
                writer.WriteString(PropName_displayName, __value_DisplayName);
            }
            string __value_ResourceType = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).ResourceType;
            if (__value_ResourceType is not null)
            {
                writer.WriteString(PropName_resourceType, __value_ResourceType);
            }
            string __value_Uid = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).Uid;
            if (__value_Uid is not null)
            {
                writer.WriteString(PropName_uid, __value_Uid);
            }
            string __value_State = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).State;
            if (__value_State is not null)
            {
                writer.WriteString(PropName_state, __value_State);
            }
            global::System.DateTime? __value_CreationTimestamp = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).CreationTimestamp;
            if (__value_CreationTimestamp is not null)
            {
                writer.WritePropertyName(PropName_creationTimestamp);
                global::System.Text.Json.JsonSerializer.Serialize(writer, __value_CreationTimestamp, NullableDateTime);
            }
            global::System.DateTime? __value_StartTimestamp = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).StartTimestamp;
            if (__value_StartTimestamp is not null)
            {
                writer.WritePropertyName(PropName_startTimestamp);
                global::System.Text.Json.JsonSerializer.Serialize(writer, __value_StartTimestamp, NullableDateTime);
            }
            global::System.DateTime? __value_StopTimestamp = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).StopTimestamp;
            if (__value_StopTimestamp is not null)
            {
                writer.WritePropertyName(PropName_stopTimestamp);
                global::System.Text.Json.JsonSerializer.Serialize(writer, __value_StopTimestamp, NullableDateTime);
            }
            string __value_HealthStatus = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).HealthStatus;
            if (__value_HealthStatus is not null)
            {
                writer.WriteString(PropName_healthStatus, __value_HealthStatus);
            }
            global::Aspire.Dashboard.Model.Serialization.ResourceUrlJson[] __value_Urls = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).Urls;
            if (__value_Urls is not null)
            {
                writer.WritePropertyName(PropName_urls);
                ResourceUrlJsonArraySerializeHandler(writer, __value_Urls);
            }
            global::Aspire.Dashboard.Model.Serialization.ResourceVolumeJson[] __value_Volumes = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).Volumes;
            if (__value_Volumes is not null)
            {
                writer.WritePropertyName(PropName_volumes);
                ResourceVolumeJsonArraySerializeHandler(writer, __value_Volumes);
            }
            global::Aspire.Dashboard.Model.Serialization.ResourceEnvironmentVariableJson[] __value_Environment = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).Environment;
            if (__value_Environment is not null)
            {
                writer.WritePropertyName(PropName_environment);
                ResourceEnvironmentVariableJsonArraySerializeHandler(writer, __value_Environment);
            }
            global::Aspire.Dashboard.Model.Serialization.ResourceHealthReportJson[] __value_HealthReports = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).HealthReports;
            if (__value_HealthReports is not null)
            {
                writer.WritePropertyName(PropName_healthReports);
                ResourceHealthReportJsonArraySerializeHandler(writer, __value_HealthReports);
            }
            global::Aspire.Dashboard.Model.Serialization.ResourcePropertyJson[] __value_Properties = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).Properties;
            if (__value_Properties is not null)
            {
                writer.WritePropertyName(PropName_properties);
                ResourcePropertyJsonArraySerializeHandler(writer, __value_Properties);
            }
            global::Aspire.Dashboard.Model.Serialization.ResourceRelationshipJson[] __value_Relationships = ((global::Aspire.Dashboard.Model.Serialization.ResourceJson)value).Relationships;
            if (__value_Relationships is not null)
            {
                writer.WritePropertyName(PropName_relationships);
                ResourceRelationshipJsonArraySerializeHandler(writer, __value_Relationships);
            }
 
            writer.WriteEndObject();
        }
    }
}