| File: ApplicationModel\TerminalPlacement.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.Diagnostics.CodeAnalysis; namespace Aspire.Hosting.ApplicationModel; /// <summary> /// Identifies where a terminal is displayed in the dashboard. /// </summary> /// <remarks> /// Placement is fixed when a terminal is created. It describes where the terminal is displayed, /// while <see cref="TerminalOwner"/> identifies which component owns its workload. /// </remarks> [Experimental(TerminalDiagnostics.DiagnosticId, UrlFormat = TerminalDiagnostics.UrlFormat)] public enum TerminalPlacement { /// <summary> /// The terminal is a tab in the dashboard's terminal dock, and is listed by the terminal watch stream. /// </summary> Dock, /// <summary> /// The terminal can be displayed by <see cref="IInteractionService.PromptTerminalAsync"/>. /// It remains caller-owned and is addressed directly by the dialog, not listed in the terminal dock. /// </summary> Dialog, /// <summary> /// The terminal is displayed on the terminal view of the resource it belongs to. /// </summary> ResourceView, /// <summary> /// The terminal is not displayed anywhere. /// </summary> /// <remarks> /// Terminals driven purely through the automation members of <see cref="AspireTerminal"/> never need a /// viewer. Giving that case its own value keeps it out of the dock's tab list without having to pretend it /// belongs to a dialog or a resource. /// </remarks> None }