// Copyright (c) Microsoft. All rights reserved. using Microsoft.Agents.AI.DurableTask; namespace Microsoft.Agents.AI.Hosting.AzureFunctions; /// /// Provides Azure Functions–specific configuration for durable workflows. /// internal sealed class FunctionsDurableOptions : DurableOptions { private readonly HashSet _statusEndpointWorkflows = new(StringComparer.OrdinalIgnoreCase); private readonly HashSet _mcpToolTriggerWorkflows = new(StringComparer.OrdinalIgnoreCase); /// /// Enables the status HTTP endpoint for the specified workflow. /// internal void EnableStatusEndpoint(string workflowName) { this._statusEndpointWorkflows.Add(workflowName); } /// /// Returns whether the status endpoint is enabled for the specified workflow. /// internal bool IsStatusEndpointEnabled(string workflowName) { return this._statusEndpointWorkflows.Contains(workflowName); } /// /// Enables the MCP tool trigger for the specified workflow. /// internal void EnableMcpToolTrigger(string workflowName) { this._mcpToolTriggerWorkflows.Add(workflowName); } /// /// Returns whether the MCP tool trigger is enabled for the specified workflow. /// internal bool IsMcpToolTriggerEnabled(string workflowName) { return this._mcpToolTriggerWorkflows.Contains(workflowName); } }