// Generated from ATS declarations. Do not edit.
#nullable enable
using System.Text.Json;
using System.Text.Json.Nodes;
using System.Text.Json.Serialization;
using Aspire.Hosting.Native.Api;
using Aspire.Hosting.Native.Authoring;
using Aspire.Hosting.Native.Model;
namespace Aspire.Hosting.Native.Rpc;
internal static class NativeDispatch
{
public static async Task<JsonNode?> InvokeAsync(NativeApplicationServer server, NativeHandles handles, NativeRpcConnection connection, NativeRpcConnection callbackConnection, string capability, JsonObject arguments)
{
try
{
switch (capability)
{
case "Aspire.Hosting.Native.Api/abortRevision":
{
RpcArguments.Validate(arguments, ["context", "revision"]);
var target = handles.Get<ApplicationWorkspace>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationWorkspace");
target.AbortRevision(handles.Get<Composition>(arguments["revision"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition"));
return null;
}
case "Aspire.Hosting.Native.Api/addComputeEnvironment":
{
RpcArguments.Validate(arguments, ["context", "name", "typeId"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.AddComputeEnvironment(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["typeId"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/addConfiguredParameter":
{
RpcArguments.Validate(arguments, ["context", "name", "secret", "publishing"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.AddConfiguredParameter(RpcArguments.String(arguments["name"]), RpcArguments.Boolean(arguments["secret"]), RpcArguments.Boolean(arguments["publishing"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Api/addContainer":
{
RpcArguments.Validate(arguments, ["context", "name", "image"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.AddContainer(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["image"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/addExecutable":
{
RpcArguments.Validate(arguments, ["context", "name", "executablePath", "workingDirectory"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.AddExecutable(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["executablePath"]), RpcArguments.String(arguments["workingDirectory"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/addGeneratedParameter":
{
RpcArguments.Validate(arguments, ["context", "name", "options", "secret"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.AddGeneratedParameter(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["options"]), RpcArguments.Boolean(arguments["secret"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Api/addGeneratedSecretParameter":
{
RpcArguments.Validate(arguments, ["context", "name"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.AddGeneratedSecretParameter(RpcArguments.String(arguments["name"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Api/addParameterValue":
{
RpcArguments.Validate(arguments, ["context", "name", "value", "secret", "publishValueAsDefault"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.AddParameterValue(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["value"]), RpcArguments.Boolean(arguments["secret"]), RpcArguments.Boolean(arguments["publishValueAsDefault"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Api/addResource":
{
RpcArguments.Validate(arguments, ["context", "name", "typeId"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.AddResource(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["typeId"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/addSecretParameter":
{
RpcArguments.Validate(arguments, ["context", "name", "value"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.AddSecretParameter(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["value"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Api/appendResourceLog":
{
RpcArguments.Validate(arguments, ["context", "stream", "message"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
target.AppendResourceLog(RpcArguments.String(arguments["stream"]), RpcArguments.String(arguments["message"]));
return null;
}
case "Aspire.Hosting.Native.Api/awaitRuntimeOperation":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<RuntimeOperation>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.RuntimeOperation");
var result = await target.AwaitRuntimeOperation().ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.RuntimeOperationResult);
}
case "Aspire.Hosting.Native.Api/beginPublishing":
{
RpcArguments.Validate(arguments, ["context", "target"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
target.BeginPublishing(RpcArguments.String(arguments["target"]));
return null;
}
case "Aspire.Hosting.Native.Api/beginRevision":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ApplicationWorkspace>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationWorkspace");
handles.EnsureCapacity();
var result = target.BeginRevision();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
}
case "Aspire.Hosting.Native.Api/claimPublishingSteps":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
var result = target.ClaimPublishingSteps();
return new JsonArray(result.Select(value => (JsonNode?)JsonValue.Create(value)).ToArray());
}
case "Aspire.Hosting.Native.Api/commitRevision":
{
RpcArguments.Validate(arguments, ["context", "revision"]);
var target = handles.Get<ApplicationWorkspace>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationWorkspace");
await target.CommitRevision(handles.Get<Composition>(arguments["revision"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition")).ConfigureAwait(false);
return null;
}
case "Aspire.Hosting.Native.Api/completePublishing":
{
RpcArguments.Validate(arguments, ["context", "failed"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
target.CompletePublishing(RpcArguments.Boolean(arguments["failed"]));
return null;
}
case "Aspire.Hosting.Native.Api/completeResourceCommand":
{
RpcArguments.Validate(arguments, ["context", "requestId", "result"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
target.CompleteResourceCommand(RpcArguments.String(arguments["requestId"]), RpcArguments.Dto(arguments["result"], NativeRpcJsonContext.Default.RuntimeOperationResult));
return null;
}
case "Aspire.Hosting.Native.Api/completeResourceConfiguration":
{
RpcArguments.Validate(arguments, ["context", "revision", "result"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
target.CompleteResourceConfiguration(RpcArguments.Int64(arguments["revision"]), RpcArguments.Dto(arguments["result"], NativeRpcJsonContext.Default.RuntimeOperationResult));
return null;
}
case "Aspire.Hosting.Native.Api/concatValue":
{
RpcArguments.Validate(arguments, ["context", "suffix"]);
var target = handles.Get<DeclaredValue>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
handles.EnsureCapacity();
var result = target.ConcatValue(handles.Get<DeclaredValue>(arguments["suffix"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue"));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Api/configurePublishing":
{
RpcArguments.Validate(arguments, ["context", "graphJson"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
target.ConfigurePublishing(RpcArguments.String(arguments["graphJson"]));
return null;
}
case "Aspire.Hosting.Native.Api/createApplicationLifetime":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
handles.EnsureCapacity();
var result = target.CreateApplicationLifetime();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationRunLifetime");
}
case "Aspire.Hosting.Native.Api/createApplicationWorkspace":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
handles.EnsureCapacity();
var result = target.CreateApplicationWorkspace();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationWorkspace");
}
case "Aspire.Hosting.Native.Api/createEndpointValue":
{
RpcArguments.Validate(arguments, ["context", "resource", "endpointName", "property"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.CreateEndpointValue(handles.Get<DeclaredResource>(arguments["resource"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource"), RpcArguments.String(arguments["endpointName"]), RpcArguments.String(arguments["property"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Api/createExecution":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.CreateExecution();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationExecution");
}
case "Aspire.Hosting.Native.Api/createLiteralValue":
{
RpcArguments.Validate(arguments, ["context", "value"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.CreateLiteralValue(RpcArguments.String(arguments["value"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Api/createRpcBuilder":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
handles.EnsureCapacity();
var result = target.CreateRpcBuilder();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcBuilder");
}
case "Aspire.Hosting.Native.Api/defineResourceCommand":
{
RpcArguments.Validate(arguments, ["context", "name", "displayName"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
target.DefineResourceCommand(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["displayName"]));
return null;
}
case "Aspire.Hosting.Native.Api/encodeUriValue":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<DeclaredValue>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
handles.EnsureCapacity();
var result = target.EncodeUriValue();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Api/exportPublishModel":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
var result = target.ExportPublishModel();
return JsonValue.Create(result);
}
case "Aspire.Hosting.Native.Api/getApplicationExecution":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ApplicationWorkspace>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationWorkspace");
handles.EnsureCapacity();
var result = target.GetApplicationExecution();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationExecution");
}
case "Aspire.Hosting.Native.Api/inspect":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
var result = target.Inspect();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.CompositionSnapshot);
}
case "Aspire.Hosting.Native.Api/inspectExecutionSymbolicConfiguration":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = target.InspectExecutionSymbolicConfiguration();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.SymbolicConfigurationSnapshot);
}
case "Aspire.Hosting.Native.Api/inspectResource":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
var result = target.InspectResource();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.DeclarationSnapshot);
}
case "Aspire.Hosting.Native.Api/inspectSymbolicConfiguration":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
var result = target.InspectSymbolicConfiguration();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.SymbolicConfigurationSnapshot);
}
case "Aspire.Hosting.Native.Api/inviteApplicationObserver":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ApplicationExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationExecution");
var result = target.InviteApplicationObserver();
return JsonValue.Create(result);
}
case "Aspire.Hosting.Native.Api/inviteApplicationWorkspace":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ApplicationWorkspace>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationWorkspace");
var result = target.InviteApplicationWorkspace();
return JsonValue.Create(result);
}
case "Aspire.Hosting.Native.Api/inviteResourceExecution":
{
RpcArguments.Validate(arguments, ["context", "resource"]);
var target = handles.Get<ApplicationExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationExecution");
var result = target.InviteResourceExecution(handles.Get<DeclaredResource>(arguments["resource"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource"));
return JsonValue.Create(result);
}
case "Aspire.Hosting.Native.Api/invokeResourceCommand":
{
RpcArguments.Validate(arguments, ["context", "resourceName", "commandName"]);
var target = handles.Get<ApplicationObserver>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationObserver");
handles.EnsureCapacity();
var result = target.InvokeResourceCommand(RpcArguments.String(arguments["resourceName"]), RpcArguments.String(arguments["commandName"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.RuntimeOperation");
}
case "Aspire.Hosting.Native.Api/joinApplicationObserver":
{
RpcArguments.Validate(arguments, ["context", "invitation"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
handles.EnsureCapacity();
var result = target.JoinApplicationObserver(RpcArguments.String(arguments["invitation"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationObserver");
}
case "Aspire.Hosting.Native.Api/joinApplicationWorkspace":
{
RpcArguments.Validate(arguments, ["context", "invitation"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
handles.EnsureCapacity();
var result = target.JoinApplicationWorkspace(RpcArguments.String(arguments["invitation"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationWorkspace");
}
case "Aspire.Hosting.Native.Api/joinResourceExecution":
{
RpcArguments.Validate(arguments, ["context", "invitation"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
handles.EnsureCapacity();
var result = target.JoinResourceExecution(RpcArguments.String(arguments["invitation"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
}
case "Aspire.Hosting.Native.Api/openApplication":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
handles.EnsureCapacity();
var result = target.OpenApplication();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.CompositionSession");
}
case "Aspire.Hosting.Native.Api/publishObservation":
{
RpcArguments.Validate(arguments, ["context", "observation"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
target.PublishObservation(RpcArguments.Dto(arguments["observation"], NativeRpcJsonContext.Default.ResourceObservation));
return null;
}
case "Aspire.Hosting.Native.Api/readApplicationState":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ApplicationExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationExecution");
var result = target.ReadApplicationState();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.ApplicationObservations);
}
case "Aspire.Hosting.Native.Api/readConfirmations":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ApplicationObserver>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationObserver");
var result = target.ReadConfirmations();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.PendingConfirmations);
}
case "Aspire.Hosting.Native.Api/readLifecyclePhase":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ResourceLifecycleScope>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceLifecycleScope");
var result = target.ReadLifecyclePhase();
return JsonValue.Create(result);
}
case "Aspire.Hosting.Native.Api/readResourceCommands":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = target.ReadResourceCommands();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.PendingResourceCommands);
}
case "Aspire.Hosting.Native.Api/readResourceConfiguration":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = target.ReadResourceConfiguration();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.ResourceConfigurationRevision);
}
case "Aspire.Hosting.Native.Api/readResourceDependencies":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = target.ReadResourceDependencies();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.ApplicationObservations);
}
case "Aspire.Hosting.Native.Api/readResourceLogs":
{
RpcArguments.Validate(arguments, ["context", "resourceId", "afterSequence"]);
var target = handles.Get<ApplicationObserver>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationObserver");
var result = target.ReadResourceLogs(RpcArguments.String(arguments["resourceId"]), RpcArguments.Int64(arguments["afterSequence"]));
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.ResourceLogs);
}
case "Aspire.Hosting.Native.Api/readResourceObservations":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ApplicationObserver>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationObserver");
var result = target.ReadResourceObservations();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.ApplicationObservations);
}
case "Aspire.Hosting.Native.Api/removeSymbolicConfiguration":
{
RpcArguments.Validate(arguments, ["context", "name"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
target.RemoveSymbolicConfiguration(RpcArguments.String(arguments["name"]));
return null;
}
case "Aspire.Hosting.Native.Api/reportPublishingActivity":
{
RpcArguments.Validate(arguments, ["context", "step", "status", "complete", "failed"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
target.ReportPublishingActivity(RpcArguments.String(arguments["step"]), RpcArguments.String(arguments["status"]), RpcArguments.Boolean(arguments["complete"]), RpcArguments.Boolean(arguments["failed"]));
return null;
}
case "Aspire.Hosting.Native.Api/reportPublishingProgress":
{
RpcArguments.Validate(arguments, ["context", "step", "type", "id", "status", "complete", "failed", "markdown"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
target.ReportPublishingProgress(RpcArguments.String(arguments["step"]), RpcArguments.String(arguments["type"]), RpcArguments.String(arguments["id"]), RpcArguments.String(arguments["status"]), RpcArguments.Boolean(arguments["complete"]), RpcArguments.Boolean(arguments["failed"]), RpcArguments.Boolean(arguments["markdown"]));
return null;
}
case "Aspire.Hosting.Native.Api/requestConfirmation":
{
RpcArguments.Validate(arguments, ["context", "message"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
handles.EnsureCapacity();
var result = target.RequestConfirmation(RpcArguments.String(arguments["message"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.RuntimeOperation");
}
case "Aspire.Hosting.Native.Api/respondConfirmation":
{
RpcArguments.Validate(arguments, ["context", "requestId", "accepted"]);
var target = handles.Get<ApplicationObserver>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationObserver");
target.RespondConfirmation(RpcArguments.String(arguments["requestId"]), RpcArguments.Boolean(arguments["accepted"]));
return null;
}
case "Aspire.Hosting.Native.Api/restartContainer":
{
RpcArguments.Validate(arguments, ["context", "revision", "container"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.RestartContainer(RpcArguments.Int64(arguments["revision"]), RpcArguments.Dto(arguments["container"], NativeRpcJsonContext.Default.ContainerLaunch)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.StartedWorkload);
}
case "Aspire.Hosting.Native.Api/restartContainerWithValues":
{
RpcArguments.Validate(arguments, ["context", "revision", "networkContext", "launch", "bindings"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.RestartContainerWithValues(RpcArguments.Int64(arguments["revision"]), RpcArguments.String(arguments["networkContext"]), RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ContainerWorkloadLaunch), RpcArguments.Dto(arguments["bindings"], NativeRpcJsonContext.Default.SymbolicLaunchBindings)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.WorkloadAllocation);
}
case "Aspire.Hosting.Native.Api/restartContainerWorkload":
{
RpcArguments.Validate(arguments, ["context", "revision", "launch"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.RestartContainerWorkload(RpcArguments.Int64(arguments["revision"]), RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ContainerWorkloadLaunch)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.WorkloadAllocation);
}
case "Aspire.Hosting.Native.Api/restartExecutable":
{
RpcArguments.Validate(arguments, ["context", "revision", "executable"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.RestartExecutable(RpcArguments.Int64(arguments["revision"]), RpcArguments.Dto(arguments["executable"], NativeRpcJsonContext.Default.ExecutableLaunch)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.StartedWorkload);
}
case "Aspire.Hosting.Native.Api/restartExecutableWithValues":
{
RpcArguments.Validate(arguments, ["context", "revision", "networkContext", "launch", "bindings"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.RestartExecutableWithValues(RpcArguments.Int64(arguments["revision"]), RpcArguments.String(arguments["networkContext"]), RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ExecutableWorkloadLaunch), RpcArguments.Dto(arguments["bindings"], NativeRpcJsonContext.Default.SymbolicLaunchBindings)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.WorkloadAllocation);
}
case "Aspire.Hosting.Native.Api/restartExecutableWorkload":
{
RpcArguments.Validate(arguments, ["context", "revision", "launch"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.RestartExecutableWorkload(RpcArguments.Int64(arguments["revision"]), RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ExecutableWorkloadLaunch)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.WorkloadAllocation);
}
case "Aspire.Hosting.Native.Api/retireApplicationWorkspace":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ApplicationWorkspace>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationWorkspace");
await target.RetireApplicationWorkspace().ConfigureAwait(false);
return null;
}
case "Aspire.Hosting.Native.Api/retireGeneration":
{
RpcArguments.Validate(arguments, ["context", "composition"]);
var target = handles.Get<CompositionSession>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.CompositionSession");
await target.RetireGeneration(handles.Get<Composition>(arguments["composition"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition")).ConfigureAwait(false);
return null;
}
case "Aspire.Hosting.Native.Api/runLifecycleExecutable":
{
RpcArguments.Validate(arguments, ["context", "launch", "bindings"]);
var target = handles.Get<ResourceLifecycleScope>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceLifecycleScope");
var result = await target.RunLifecycleExecutable(RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ExecutableWorkloadLaunch), RpcArguments.Dto(arguments["bindings"], NativeRpcJsonContext.Default.SymbolicLaunchBindings)).ConfigureAwait(false);
return JsonValue.Create(result);
}
case "Aspire.Hosting.Native.Api/seal":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
var result = target.Seal();
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.CompositionSnapshot);
}
case "Aspire.Hosting.Native.Api/setResourceConfiguration":
{
RpcArguments.Validate(arguments, ["context", "configuration"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
target.SetResourceConfiguration(RpcArguments.Dto(arguments["configuration"], NativeRpcJsonContext.Default.ResourceConfiguration));
return null;
}
case "Aspire.Hosting.Native.Api/setSymbolicConfiguration":
{
RpcArguments.Validate(arguments, ["context", "name", "value"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
target.SetSymbolicConfiguration(RpcArguments.String(arguments["name"]), handles.Get<DeclaredValue>(arguments["value"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue"));
return null;
}
case "Aspire.Hosting.Native.Api/startApplication":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<Composition>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
handles.EnsureCapacity();
var result = target.StartApplication();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationExecution");
}
case "Aspire.Hosting.Native.Api/startContainer":
{
RpcArguments.Validate(arguments, ["context", "container"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.StartContainer(RpcArguments.Dto(arguments["container"], NativeRpcJsonContext.Default.ContainerLaunch)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.StartedWorkload);
}
case "Aspire.Hosting.Native.Api/startContainerWithValues":
{
RpcArguments.Validate(arguments, ["context", "revision", "networkContext", "launch", "bindings"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.StartContainerWithValues(RpcArguments.Int64(arguments["revision"]), RpcArguments.String(arguments["networkContext"]), RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ContainerWorkloadLaunch), RpcArguments.Dto(arguments["bindings"], NativeRpcJsonContext.Default.SymbolicLaunchBindings)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.WorkloadAllocation);
}
case "Aspire.Hosting.Native.Api/startContainerWorkload":
{
RpcArguments.Validate(arguments, ["context", "launch"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.StartContainerWorkload(RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ContainerWorkloadLaunch)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.WorkloadAllocation);
}
case "Aspire.Hosting.Native.Api/startExecutable":
{
RpcArguments.Validate(arguments, ["context", "executable"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.StartExecutable(RpcArguments.Dto(arguments["executable"], NativeRpcJsonContext.Default.ExecutableLaunch)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.StartedWorkload);
}
case "Aspire.Hosting.Native.Api/startExecutableWithValues":
{
RpcArguments.Validate(arguments, ["context", "revision", "networkContext", "launch", "bindings"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.StartExecutableWithValues(RpcArguments.Int64(arguments["revision"]), RpcArguments.String(arguments["networkContext"]), RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ExecutableWorkloadLaunch), RpcArguments.Dto(arguments["bindings"], NativeRpcJsonContext.Default.SymbolicLaunchBindings)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.WorkloadAllocation);
}
case "Aspire.Hosting.Native.Api/startExecutableWorkload":
{
RpcArguments.Validate(arguments, ["context", "launch"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.StartExecutableWorkload(RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ExecutableWorkloadLaunch)).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.WorkloadAllocation);
}
case "Aspire.Hosting.Native.Api/startGeneration":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<CompositionSession>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.CompositionSession");
handles.EnsureCapacity();
var result = target.StartGeneration();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
}
case "Aspire.Hosting.Native.Api/waitApplicationReady":
{
RpcArguments.Validate(arguments, ["context", "timeoutMilliseconds"]);
var target = handles.Get<ApplicationExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationExecution");
await target.WaitApplicationReady(RpcArguments.Int32(arguments["timeoutMilliseconds"])).ConfigureAwait(false);
return null;
}
case "Aspire.Hosting.Native.Api/waitFor":
{
RpcArguments.Validate(arguments, ["context", "dependency"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
target.WaitFor(handles.Get<DeclaredResource>(arguments["dependency"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource"));
return null;
}
case "Aspire.Hosting.Native.Api/waitForPublishingStop":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<NativeApplicationServer>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.NativeApplicationServer");
await target.WaitForPublishingStop().ConfigureAwait(false);
return null;
}
case "Aspire.Hosting.Native.Api/waitForStop":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<ApplicationRunLifetime>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationRunLifetime");
await target.WaitForStop().ConfigureAwait(false);
return null;
}
case "Aspire.Hosting.Native.Api/waitResourceCommands":
{
RpcArguments.Validate(arguments, ["context", "timeoutMilliseconds"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.WaitResourceCommands(RpcArguments.Int32(arguments["timeoutMilliseconds"])).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.PendingResourceCommands);
}
case "Aspire.Hosting.Native.Api/waitResourceCompletion":
{
RpcArguments.Validate(arguments, ["context", "resource", "timeoutMilliseconds"]);
var target = handles.Get<ApplicationExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationExecution");
var result = await target.WaitResourceCompletion(handles.Get<DeclaredResource>(arguments["resource"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource"), RpcArguments.Int32(arguments["timeoutMilliseconds"])).ConfigureAwait(false);
return JsonValue.Create(result);
}
case "Aspire.Hosting.Native.Api/waitResourceConfiguration":
{
RpcArguments.Validate(arguments, ["context", "revision", "timeoutMilliseconds"]);
var target = handles.Get<ResourceExecution>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceExecution");
var result = await target.WaitResourceConfiguration(RpcArguments.Int64(arguments["revision"]), RpcArguments.Int32(arguments["timeoutMilliseconds"])).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.ResourceConfigurationRevision);
}
case "Aspire.Hosting.Native.Api/waitResourceObservations":
{
RpcArguments.Validate(arguments, ["context", "version", "timeoutMilliseconds"]);
var target = handles.Get<ApplicationObserver>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ApplicationObserver");
var result = await target.WaitResourceObservations(RpcArguments.Int64(arguments["version"]), RpcArguments.Int32(arguments["timeoutMilliseconds"])).ConfigureAwait(false);
return JsonSerializer.SerializeToNode(result, NativeRpcJsonContext.Default.ApplicationObservations);
}
case "Aspire.Hosting.Native.Api/withArgument":
{
RpcArguments.Validate(arguments, ["context", "value"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
handles.EnsureCapacity();
var result = target.WithArgument(handles.Get<DeclaredValue>(arguments["value"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue"));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/withBindMount":
{
RpcArguments.Validate(arguments, ["context", "source", "target", "readOnly"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
handles.EnsureCapacity();
var result = target.WithBindMount(RpcArguments.String(arguments["source"]), RpcArguments.String(arguments["target"]), RpcArguments.Boolean(arguments["readOnly"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/withComputeEnvironment":
{
RpcArguments.Validate(arguments, ["context", "environment"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
target.WithComputeEnvironment(handles.Get<DeclaredResource>(arguments["environment"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource"));
return null;
}
case "Aspire.Hosting.Native.Api/withEndpoint":
{
RpcArguments.Validate(arguments, ["context", "endpoint"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
handles.EnsureCapacity();
var result = target.WithEndpoint(RpcArguments.Dto(arguments["endpoint"], NativeRpcJsonContext.Default.WorkloadEndpointDeclaration));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/withEntrypoint":
{
RpcArguments.Validate(arguments, ["context", "entrypoint"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
handles.EnsureCapacity();
var result = target.WithEntrypoint(RpcArguments.String(arguments["entrypoint"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/withEnvironment":
{
RpcArguments.Validate(arguments, ["context", "name", "value"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
handles.EnsureCapacity();
var result = target.WithEnvironment(RpcArguments.String(arguments["name"]), handles.Get<DeclaredValue>(arguments["value"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue"));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/withExternalHttpEndpoints":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
handles.EnsureCapacity();
var result = target.WithExternalHttpEndpoints();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/withLifecycleExecutable":
{
RpcArguments.Validate(arguments, ["context", "phase", "launch", "bindings"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
handles.EnsureCapacity();
var result = target.WithLifecycleExecutable(RpcArguments.String(arguments["phase"]), RpcArguments.Dto(arguments["launch"], NativeRpcJsonContext.Default.ExecutableWorkloadLaunch), RpcArguments.Dto(arguments["bindings"], NativeRpcJsonContext.Default.SymbolicLaunchBindings));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/withReference":
{
RpcArguments.Validate(arguments, ["context", "environmentName", "value"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
handles.EnsureCapacity();
var result = target.WithReference(RpcArguments.String(arguments["environmentName"]), handles.Get<DeclaredValue>(arguments["value"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue"));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/withVolume":
{
RpcArguments.Validate(arguments, ["context", "name", "target", "readOnly"]);
var target = handles.Get<DeclaredResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
handles.EnsureCapacity();
var result = target.WithVolume(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["target"]), RpcArguments.Boolean(arguments["readOnly"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredResource");
}
case "Aspire.Hosting.Native.Api/writeLifecycleLog":
{
RpcArguments.Validate(arguments, ["context", "stream", "message"]);
var target = handles.Get<ResourceLifecycleScope>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.ResourceLifecycleScope");
target.WriteLifecycleLog(RpcArguments.String(arguments["stream"]), RpcArguments.String(arguments["message"]));
return null;
}
case "Aspire.Hosting.Native.Authoring/add":
{
RpcArguments.Validate(arguments, ["context", "value"]);
var target = handles.Get<RpcArgsEditor>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcArgsEditor");
target.Add(RpcArguments.Union(arguments["value"], handles, ["Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue", "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcEndpoint", "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource"]));
return null;
}
case "Aspire.Hosting.Native.Authoring/addContainer":
{
RpcArguments.Validate(arguments, ["context", "name", "image"]);
var target = handles.Get<RpcBuilder>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcBuilder");
handles.EnsureCapacity();
var result = target.AddContainer(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["image"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/addExecutable":
{
RpcArguments.Validate(arguments, ["context", "name", "executablePath", "workingDirectory"]);
var target = handles.Get<RpcBuilder>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcBuilder");
handles.EnsureCapacity();
var result = target.AddExecutable(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["executablePath"]), RpcArguments.String(arguments["workingDirectory"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/addSecretParameter":
{
RpcArguments.Validate(arguments, ["context", "name", "value"]);
var target = handles.Get<RpcBuilder>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcBuilder");
handles.EnsureCapacity();
var result = target.AddSecretParameter(RpcArguments.String(arguments["name"]), RpcArguments.String(arguments["value"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Authoring/build":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<RpcBuilder>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcBuilder");
handles.EnsureCapacity();
var result = target.Build();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.Composition");
}
case "Aspire.Hosting.Native.Authoring/getEndpoint":
{
RpcArguments.Validate(arguments, ["context", "name"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
handles.EnsureCapacity();
var result = target.GetEndpoint(RpcArguments.String(arguments["name"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcEndpoint");
}
case "Aspire.Hosting.Native.Authoring/getResourceName":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
var result = target.GetResourceName();
return JsonValue.Create(result);
}
case "Aspire.Hosting.Native.Authoring/getSerializedAnnotation":
{
RpcArguments.Validate(arguments, ["context", "annotationId"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
var result = target.GetSerializedAnnotation(RpcArguments.String(arguments["annotationId"]));
return JsonValue.Create(result);
}
case "Aspire.Hosting.Native.Authoring/property":
{
RpcArguments.Validate(arguments, ["context", "property"]);
var target = handles.Get<RpcEndpoint>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcEndpoint");
handles.EnsureCapacity();
var result = target.Property(RpcArguments.String(arguments["property"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue");
}
case "Aspire.Hosting.Native.Authoring/retire":
{
RpcArguments.Validate(arguments, ["context"]);
var target = handles.Get<RpcBuilder>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcBuilder");
await target.Retire().ConfigureAwait(false);
return null;
}
case "Aspire.Hosting.Native.Authoring/set":
{
RpcArguments.Validate(arguments, ["context", "name", "value"]);
var target = handles.Get<RpcEnvironmentEditor>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcEnvironmentEditor");
target.Set(RpcArguments.String(arguments["name"]), RpcArguments.Union(arguments["value"], handles, ["Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue", "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcEndpoint", "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource"]));
return null;
}
case "Aspire.Hosting.Native.Authoring/waitFor":
{
RpcArguments.Validate(arguments, ["context", "dependency"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
handles.EnsureCapacity();
var result = target.WaitFor(handles.Get<RpcResource>(arguments["dependency"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource"));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/withArgs":
{
RpcArguments.Validate(arguments, ["context", "args"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
handles.EnsureCapacity();
var result = target.WithArgs(RpcArguments.Strings(arguments["args"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/withArgsCallback":
{
RpcArguments.Validate(arguments, ["context", "callback"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
var result = await target.WithArgsCallback(connection.CreateAuthoringCallback<RpcArgsEditor>(callbackConnection, RpcArguments.String(arguments["callback"]), "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcArgsEditor")).ConfigureAwait(false);
return connection.PublishCoreHandle(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/withConnectionString":
{
RpcArguments.Validate(arguments, ["context", "value"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
handles.EnsureCapacity();
var result = target.WithConnectionString(RpcArguments.Union(arguments["value"], handles, ["Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue", "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcEndpoint", "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/withEndpoint":
{
RpcArguments.Validate(arguments, ["context", "options"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
handles.EnsureCapacity();
var result = target.WithEndpoint(RpcArguments.Dto(arguments["options"], NativeRpcJsonContext.Default.RpcEndpointOptions));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/withEnvironment":
{
RpcArguments.Validate(arguments, ["context", "name", "value"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
handles.EnsureCapacity();
var result = target.WithEnvironment(RpcArguments.String(arguments["name"]), RpcArguments.Union(arguments["value"], handles, ["Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.DeclaredValue", "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcEndpoint", "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/withEnvironmentCallback":
{
RpcArguments.Validate(arguments, ["context", "callback"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
var result = await target.WithEnvironmentCallback(connection.CreateAuthoringCallback<RpcEnvironmentEditor>(callbackConnection, RpcArguments.String(arguments["callback"]), "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcEnvironmentEditor")).ConfigureAwait(false);
return connection.PublishCoreHandle(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/withImageTag":
{
RpcArguments.Validate(arguments, ["context", "tag"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
handles.EnsureCapacity();
var result = target.WithImageTag(RpcArguments.String(arguments["tag"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/withReference":
{
RpcArguments.Validate(arguments, ["context", "source"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
handles.EnsureCapacity();
var result = target.WithReference(handles.Get<RpcResource>(arguments["source"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource"));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Authoring/withSerializedAnnotation":
{
RpcArguments.Validate(arguments, ["context", "annotationId", "json"]);
var target = handles.Get<RpcResource>(arguments["context"], "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
handles.EnsureCapacity();
var result = target.WithSerializedAnnotation(RpcArguments.String(arguments["annotationId"]), RpcArguments.String(arguments["json"]));
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Authoring.RpcResource");
}
case "Aspire.Hosting.Native.Server/createSession":
{
RpcArguments.Validate(arguments, []);
handles.EnsureCapacity();
var result = server.OpenApplication();
return handles.Add(result, "Aspire.Hosting.Native.Server/Aspire.Hosting.Native.Api.CompositionSession");
}
default: throw RpcFault.CapabilityNotFound("The capability is not implemented.");
}
}
catch (SymbolicValueException exception)
{
throw new RpcFault(exception.Code, exception.Message);
}
catch (Aspire.Hosting.Native.Runtime.ExecutionPlanException exception)
{
// This diagnostic contains only validated resource names and
// milestone names, never callback exceptions or launch inputs.
throw new RpcFault("EXECUTION_PREREQUISITE_CYCLE", exception.Message);
}
}
}
[JsonSerializable(typeof(ApplicationObservations))]
[JsonSerializable(typeof(CompositionSnapshot))]
[JsonSerializable(typeof(ContainerLaunch))]
[JsonSerializable(typeof(ContainerWorkloadLaunch))]
[JsonSerializable(typeof(DeclarationSnapshot))]
[JsonSerializable(typeof(ExecutableLaunch))]
[JsonSerializable(typeof(ExecutableWorkloadLaunch))]
[JsonSerializable(typeof(PendingConfirmations))]
[JsonSerializable(typeof(PendingResourceCommands))]
[JsonSerializable(typeof(ResourceConfiguration))]
[JsonSerializable(typeof(ResourceConfigurationRevision))]
[JsonSerializable(typeof(ResourceLogs))]
[JsonSerializable(typeof(ResourceObservation))]
[JsonSerializable(typeof(RuntimeOperationResult))]
[JsonSerializable(typeof(StartedWorkload))]
[JsonSerializable(typeof(SymbolicConfigurationSnapshot))]
[JsonSerializable(typeof(SymbolicLaunchBindings))]
[JsonSerializable(typeof(WorkloadAllocation))]
[JsonSerializable(typeof(WorkloadEndpointDeclaration))]
[JsonSerializable(typeof(RpcEndpointOptions))]
[JsonSourceGenerationOptions(PropertyNamingPolicy = JsonKnownNamingPolicy.CamelCase, UnmappedMemberHandling = JsonUnmappedMemberHandling.Disallow, RespectNullableAnnotations = true)]
internal sealed partial class NativeRpcJsonContext : JsonSerializerContext;