| File: Dcp\Model\Admin.cs | Web Access |
| Project: src\src\Aspire.Hosting\Aspire.Hosting.csproj (Aspire.Hosting) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System.Text.Json.Serialization; namespace Aspire.Hosting.Dcp.Model; // Represents the state of DCP API server execution. internal sealed class ApiServerExecution { // The current status of the API server. [JsonPropertyName("status")] public string? ApiServerStatus { get; set; } // Requested resource cleanup type. [JsonPropertyName("shutdownResourceCleanup")] public string? ShutdownResourceCleanup { get; set; } = ResourceCleanup.Full; // Indicates whether the resources have been cleaned up. public bool ResourcesCleanedUp => ApiServerStatus is not null && ( ApiServerStatus == Model.ApiServerStatus.CleanupComplete || ApiServerStatus == Model.ApiServerStatus.Stopping); } internal static class ApiServerStatus { // The server is running (default state). public const string Running = "Running"; // The server is stopping/shutting down (also used for programmatic server stoppage). // This includes resource cleanup if it was not initiated previously. public const string Stopping = "Stopping"; // The server is in te process of cleaning up resources // (also used for triggering the resource cleanup without stopping the server). public const string CleaningResources = "CleaningResources"; // The server completed resource cleanup. public const string CleanupComplete = "CleanupComplete"; } internal static class ResourceCleanup { // Full resource cleanup (default). // Projects will be stopped, non-persistent containers will be deleted etc. public const string Full = "Full"; public const string None = "None"; }