36 instantiations of AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.Java.Tests (6)
AtsJavaCodeGeneratorTests.cs (6)
2787var callbackCapability = new AtsCapabilityInfo 2819var capability = new AtsCapabilityInfo 2842var capability = new AtsCapabilityInfo 3058var callbackCapability = new AtsCapabilityInfo 3375var capability = new AtsCapabilityInfo 3699return new AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.Python (1)
AtsPythonCodeGenerator.cs (1)
409var merged = new AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.Python.Tests (6)
AtsPythonCodeGeneratorTests.cs (6)
507new AtsCapabilityInfo 563new AtsCapabilityInfo 639new AtsCapabilityInfo 723new AtsCapabilityInfo 827new AtsCapabilityInfo 849new AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.TypeScript.Tests (12)
AtsTypeScriptCodeGeneratorTests.cs (12)
284new AtsCapabilityInfo 296new AtsCapabilityInfo 1580return new AtsCapabilityInfo 1842new() 1864return new AtsCapabilityInfo 2847new AtsCapabilityInfo 2859new AtsCapabilityInfo 2871new AtsCapabilityInfo 2883new AtsCapabilityInfo 3139new AtsCapabilityInfo 3254return new AtsCapabilityInfo 3303new AtsCapabilityInfo
Aspire.Hosting.RemoteHost (6)
Ats\ExternalCapabilityRegistry.cs (1)
763return new AtsCapabilityInfo
AtsCapabilityScanner.cs (4)
1756capabilities.Add(new AtsCapabilityInfo 1799capabilities.Add(new AtsCapabilityInfo 1980capabilities.Add(new AtsCapabilityInfo 2155return new AtsCapabilityInfo
AtsContextFilter.cs (1)
332yield return new AtsCapabilityInfo
Aspire.Hosting.RemoteHost.Tests (5)
AtsContextFilterTests.cs (3)
180var supportingCapability = new AtsCapabilityInfo 496var selectedCapability = new AtsCapabilityInfo 553var unrelatedCapability = new AtsCapabilityInfo
ExternalCapabilityRegistryTests.cs (2)
889var managedCapability = new AtsCapabilityInfo 915var managedCapability = new AtsCapabilityInfo
421 references to AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.Go (42)
AtsGoCodeGenerator.cs (42)
166foreach (var capability in context.Capabilities) 244var optionsNameFirstCapability = new Dictionary<string, AtsCapabilityInfo>(StringComparer.Ordinal); 245foreach (var capability in context.Capabilities) 282if (optionsNameFirstCapability.TryGetValue(simpleName, out var firstCap) 387private static Dictionary<string, List<AtsCapabilityInfo>> GroupCapabilitiesByDirectTarget( 388IReadOnlyList<AtsCapabilityInfo> capabilities) 390var result = new Dictionary<string, List<AtsCapabilityInfo>>(StringComparer.Ordinal); 391foreach (var capability in capabilities) 399list = new List<AtsCapabilityInfo>(); 412private Dictionary<string, List<AtsCapabilityInfo>> GroupCapabilitiesByConcreteImpl( 413IReadOnlyList<AtsCapabilityInfo> capabilities) 415var result = new Dictionary<string, List<AtsCapabilityInfo>>(StringComparer.Ordinal); 417foreach (var capability in capabilities) 444list = new List<AtsCapabilityInfo>(); 782private void GenerateMarkerInterfaces(Dictionary<string, List<AtsCapabilityInfo>> capabilitiesByDirectTarget) 816private void GenerateConcreteHandleTypes(Dictionary<string, List<AtsCapabilityInfo>> capabilitiesByConcreteImpl) 837: new List<AtsCapabilityInfo>(); 845foreach (var capability in capabilities) 858CollectListDictGetters(IReadOnlyList<AtsCapabilityInfo> capabilities) 861foreach (var capability in capabilities) 894IReadOnlyList<AtsCapabilityInfo> capabilities, 904foreach (var capability in capabilities) 1023private string RenderMethodSignature(string currentTypeId, string interfaceName, AtsCapabilityInfo capability) 1077AtsCapabilityInfo capability) 1162private string RenderReturnSignature(string currentTypeId, string interfaceName, AtsCapabilityInfo capability) 1188private static bool IsSameType(string? typeId, AtsCapabilityInfo capability, string? currentTypeId = null) 1215AtsCapabilityInfo capability, 1270AtsCapabilityInfo capability, 1343AtsCapabilityInfo capability, 1368AtsCapabilityInfo capability, 1389private void EmitHandleParamErrorChecks(string indent, AtsCapabilityInfo capability, string errorAction) 1406AtsCapabilityInfo capability, 1649private void GenerateOptionsStructs(IReadOnlyList<AtsCapabilityInfo> capabilities) 1655foreach (var capability in capabilities) 1753private string GetOptionsTypeName(AtsCapabilityInfo capability) 1760private string GetOptionsQualifiedName(AtsCapabilityInfo capability, string simpleName) 1776private bool AreOptionsCompatible(AtsCapabilityInfo a, AtsCapabilityInfo b) 1825private static List<AtsParameterInfo> GetUnionParameters(AtsCapabilityInfo capability) 1854AtsCapabilityInfo capability, 1874private void EmitUnionAllowedTypesDoc(AtsCapabilityInfo capability) 1902AtsCapabilityInfo capability,
Aspire.Hosting.CodeGeneration.Go.Tests (12)
AtsGoCodeGeneratorTests.cs (12)
309var addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 312var withPersistence = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 323var addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 338var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 344var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 356var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 368var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 380var withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withOptionalString"); 392var addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer"); 677private static List<AtsCapabilityInfo> ScanCapabilitiesFromTestAssembly() 701private static List<AtsCapabilityInfo> ScanCapabilitiesFromHostingAssembly() 708private static List<AtsCapabilityInfo> ScanCapabilitiesFromBothAssemblies()
Aspire.Hosting.CodeGeneration.Java (18)
AtsJavaCodeGenerator.cs (18)
944private void CollectOptionsClasses(IReadOnlyList<AtsCapabilityInfo> capabilities) 946foreach (var capability in capabilities) 1106private string? ResolveOptionsClassName(AtsCapabilityInfo capability) => 1252Dictionary<string, List<AtsCapabilityInfo>> capabilitiesByTarget) 1275foreach (var method in methods) 1361private void GenerateCapabilityMethod(JavaHandleType handleType, AtsCapabilityInfo capability) 1726AtsCapabilityInfo capability, 1799private void GenerateCapabilityMethodImplementation(AtsCapabilityInfo capability, JavaCapabilityReturnInfo returnInfo, string methodName, string targetParamName, List<AtsParameterInfo> parameters, bool isPublic) 1881private JavaCapabilityReturnInfo GetMethodReturnInfo(JavaHandleType handleType, AtsCapabilityInfo capability) 2253private void GenerateListOrDictProperty(AtsCapabilityInfo capability, string methodName) 2425foreach (var capability in context.Capabilities) 2500private static Dictionary<string, List<AtsCapabilityInfo>> GroupCapabilitiesByTarget( 2501IReadOnlyList<AtsCapabilityInfo> capabilities) 2503var result = new Dictionary<string, List<AtsCapabilityInfo>>(StringComparer.Ordinal); 2505foreach (var capability in capabilities) 2527list = new List<AtsCapabilityInfo>(); 2537private static Dictionary<string, bool> CollectListAndDictTypeIds(IReadOnlyList<AtsCapabilityInfo> capabilities) 2541foreach (var capability in capabilities)
Aspire.Hosting.CodeGeneration.Java.Tests (21)
AtsJavaCodeGeneratorTests.cs (21)
167var addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 170var withPersistence = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 181var addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 196var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 202var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 214var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 226var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 238var withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withOptionalString"); 250var addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer"); 261var withReference = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting/withReference"); 264var waitFor = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting/waitFor"); 2600private static List<AtsCapabilityInfo> ScanCapabilitiesFromTestAssembly() 2624private static List<AtsCapabilityInfo> ScanCapabilitiesFromHostingAssembly() 2631private static List<AtsCapabilityInfo> ScanCapabilitiesFromBothAssemblies() 2787var callbackCapability = new AtsCapabilityInfo 2819var capability = new AtsCapabilityInfo 2842var capability = new AtsCapabilityInfo 3058var callbackCapability = new AtsCapabilityInfo 3375var capability = new AtsCapabilityInfo 3686private static AtsContext CreateContextWithProbeCapabilities(AtsTypeRef resourceType, params AtsCapabilityInfo[] capabilities) 3697private static AtsCapabilityInfo CreateProbeCapability(AtsTypeRef resourceType, string methodName, AtsTypeRef returnType)
Aspire.Hosting.CodeGeneration.Python (46)
AtsPythonCodeGenerator.cs (46)
22public required List<AtsCapabilityInfo> Capabilities { get; init; } 313/// Merges capabilities that share the same <see cref="AtsCapabilityInfo.SourceLocation"/> and differ 317private List<AtsCapabilityInfo> MergeCapabilitiesBySourceLocation(List<AtsCapabilityInfo> capabilities) 319var result = new List<AtsCapabilityInfo>(); 335foreach (var item in items.Skip(1)) 357var capWithExtra = items.First(c => c.Parameters.Any(p => string.Equals(p.Name, extraParamName, StringComparison.Ordinal))); 374var shortest = items.OrderBy(c => c.MethodName.Length).ThenBy(c => c.MethodName, StringComparer.Ordinal).First(); 377var fullCap = items.OrderByDescending(c => c.Parameters.Count).First(); 405var capWithoutExtra = items.FirstOrDefault(c => !c.Parameters.Any(p => string.Equals(p.Name, extraParamName, StringComparison.Ordinal))); 409var merged = new AtsCapabilityInfo 686private static string? GetReturnTypeId(AtsCapabilityInfo capability) => capability.ReturnType?.TypeId; 797foreach (var cap in capabilities) 1149foreach (var method in allMethods) 1197private static List<(string PropertyName, AtsCapabilityInfo? Getter, AtsCapabilityInfo? Setter)> GroupPropertiesByName( 1198List<AtsCapabilityInfo> getters, List<AtsCapabilityInfo> setters) 1200var result = new List<(string PropertyName, AtsCapabilityInfo? Getter, AtsCapabilityInfo? Setter)>(); 1204foreach (var getter in getters) 1215var setter = setters.FirstOrDefault(s => ExtractPropertyName(s.MethodName).Equals(setterName, StringComparison.OrdinalIgnoreCase)); 1221foreach (var setter in setters) 1255private void GeneratePropertyMethods(System.Text.StringBuilder sb, string propertyName, AtsCapabilityInfo? getter, AtsCapabilityInfo? setter, bool isInterface = false) 1343AtsCapabilityInfo capability, 1501foreach (var capability in methods) 1635foreach (var capability in methods) 1655private void GenerateBuilderMethod(System.Text.StringBuilder sb, AtsCapabilityInfo capability, bool isInterface, 1801private void GenerateEntryPointFunctions(System.Text.StringBuilder sb, List<AtsCapabilityInfo> entryPoints) 1808foreach (var capability in entryPoints) 1814private void GenerateEntryPointFunction(System.Text.StringBuilder sb, AtsCapabilityInfo capability) 1902private List<BuilderModel> CreateBuilderModels(IReadOnlyList<AtsCapabilityInfo> capabilities) 1905var capabilitiesByTypeId = new Dictionary<string, List<AtsCapabilityInfo>>(); 1911var interfaceCapabilities = new Dictionary<string, List<AtsCapabilityInfo>>(); 1913foreach (var cap in capabilities) 2041var applicableCapabilities = new List<AtsCapabilityInfo>(); 2161private Dictionary<string, AtsTypeRef> CollectAllReferencedTypes(IReadOnlyList<AtsCapabilityInfo> capabilities) 2205foreach (var cap in capabilities) 2233private static List<AtsCapabilityInfo> GetEntryPointCapabilities(IReadOnlyList<AtsCapabilityInfo> capabilities) 2443AtsCapabilityInfo capability, 2513private string AddParameterMapping(AtsCapabilityInfo capability, List<AtsParameterInfo> requiredParameters, List<AtsParameterInfo> optionalParameters) 2538private string ResolveParameterMappingName(AtsCapabilityInfo capability, List<AtsParameterInfo> requiredParameters, List<AtsParameterInfo> optionalParameters) 2589private static string GetNamespaceQualifiedParameterMappingName(AtsCapabilityInfo capability) 2675AtsCapabilityInfo capability,
Aspire.Hosting.CodeGeneration.Python.Tests (12)
AtsPythonCodeGeneratorTests.cs (12)
84var addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 87var withPersistence = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 98var addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 113var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 119var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 131var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 143var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 155var withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withOptionalString"); 167var addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer"); 438private static List<AtsCapabilityInfo> ScanCapabilitiesFromTestAssembly() 462private static List<AtsCapabilityInfo> ScanCapabilitiesFromHostingAssembly() 469private static List<AtsCapabilityInfo> ScanCapabilitiesFromBothAssemblies()
Aspire.Hosting.CodeGeneration.Rust (12)
AtsRustCodeGenerator.cs (12)
400Dictionary<string, List<AtsCapabilityInfo>> capabilitiesByTarget) 445foreach (var method in methods) 456private void GenerateCapabilityMethod(string structName, AtsCapabilityInfo capability) 658private void GenerateListOrDictProperty(string structName, AtsCapabilityInfo capability, string methodName) 789foreach (var capability in context.Capabilities) 838private static Dictionary<string, List<AtsCapabilityInfo>> GroupCapabilitiesByTarget( 839IReadOnlyList<AtsCapabilityInfo> capabilities) 841var result = new Dictionary<string, List<AtsCapabilityInfo>>(StringComparer.Ordinal); 843foreach (var capability in capabilities) 865list = new List<AtsCapabilityInfo>(); 875private static HashSet<string> CollectListAndDictTypeIds(IReadOnlyList<AtsCapabilityInfo> capabilities) 878foreach (var capability in capabilities)
Aspire.Hosting.CodeGeneration.Rust.Tests (12)
AtsRustCodeGeneratorTests.cs (12)
143var addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 146var withPersistence = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 157var addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 172var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 178var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 190var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis"); 202var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence"); 214var withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withOptionalString"); 226var addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer"); 342private static List<AtsCapabilityInfo> ScanCapabilitiesFromTestAssembly() 366private static List<AtsCapabilityInfo> ScanCapabilitiesFromHostingAssembly() 373private static List<AtsCapabilityInfo> ScanCapabilitiesFromBothAssemblies()
Aspire.Hosting.CodeGeneration.TypeScript (81)
AtsTypeScriptCodeGenerator.cs (38)
19public required List<AtsCapabilityInfo> Capabilities { get; init; } 113AtsCapabilityInfo capability, 141private void WritePropertyDocComment(string indent, AtsCapabilityInfo? getter, AtsCapabilityInfo? setter) 143var capability = getter is not null && 429private static string? GetReturnTypeId(AtsCapabilityInfo capability) => capability.ReturnType?.TypeId; 752private void GenerateGetterOnlyPropertyPromiseSignature(string propertyName, AtsCapabilityInfo getter) 759private void GenerateInterfaceProperty(string propertyName, AtsCapabilityInfo? getter, AtsCapabilityInfo? setter) 839foreach (var capability in builder.Capabilities.Where(c => 895foreach (var capability in capabilities) 923private void GenerateTypeClassInterfaceMethod(BuilderModel model, string className, AtsCapabilityInfo capability) 973foreach (var method in standardMethods) 992foreach (var method in standardMethods) 1039foreach (var capability in builder.Capabilities.Where(c => 1082private void GenerateBuilderMethod(BuilderModel builder, AtsCapabilityInfo capability) 1591foreach (var capability in capabilities) 1660private void GenerateAspireClient(List<AtsCapabilityInfo> entryPoints) 1672foreach (var capability in entryPoints) 1698private void GenerateEntryPointFunction(AtsCapabilityInfo capability) 2157foreach (var method in allMethods) 2165foreach (var method in contextMethods) 2169foreach (var method in otherMethods) 2208private void GeneratePropertyLikeObject(string propertyName, AtsCapabilityInfo? getter, AtsCapabilityInfo? setter) 2292private void GenerateGetterOnlyPropertyMethod(string propertyName, AtsCapabilityInfo getter) 2352private void GenerateWrapperGetterOnlyPropertyMethod(string propertyName, AtsCapabilityInfo getter, string wrapperClassName) 2406private void GenerateWrapperPropertyObject(string propertyName, AtsCapabilityInfo getter, AtsCapabilityInfo? setter, string wrapperClassName) 2459private void GenerateDictionaryProperty(string propertyName, AtsCapabilityInfo getter) 2495private void GenerateMutableDictionaryProperty(string propertyName, AtsCapabilityInfo getter) 2531private void GenerateListProperty(string propertyName, AtsCapabilityInfo getter) 2560private void GenerateMutableListProperty(string propertyName, AtsCapabilityInfo getter) 2603private void GenerateContextMethod(AtsCapabilityInfo method) 2719private void GenerateWrapperMethod(AtsCapabilityInfo capability) 2830private void GenerateTypeClassMethod(BuilderModel model, AtsCapabilityInfo capability) 3044private void GenerateTypeClassThenableWrapper(BuilderModel model, List<AtsCapabilityInfo> methods) 3069foreach (var capability in methods)
AtsTypeSystemCompatibility.cs (3)
12typeof(AtsCapabilityInfo).GetProperty(nameof(AtsCapabilityInfo.IsExperimental), BindingFlags.Instance | BindingFlags.Public); 14public static bool IsExperimental(AtsCapabilityInfo capability)
TypeScriptApiModel.cs (1)
313public required List<AtsCapabilityInfo> ClientMethods { get; init; }
TypeScriptApiProjector.cs (39)
275foreach (var cap in builders 308internal TypeScriptApiMethodSignature ResolveMethodSignature(BuilderModel? builder, AtsCapabilityInfo capability) 380private static string ResolveTypeClassMethodName(AtsCapabilityInfo capability) 390private string ResolveBuilderReturnType(BuilderModel? builder, AtsCapabilityInfo capability) 417private string ResolveTypeClassReturnType(BuilderModel builder, AtsCapabilityInfo capability) 485foreach (var entryPoint in _resolved.ClientMethods.OrderBy(c => c.MethodName, StringComparer.Ordinal)) 1005foreach (var capability in methods) 1151AtsCapabilityInfo capability) 1175AtsCapabilityInfo? getter, 1176AtsCapabilityInfo? setter) 1232private (TypeScriptApiItem Item, TypeScriptApiDeclaration Declaration) ProjectEntryPoint(AtsCapabilityInfo capability) 1278internal TypeScriptApiMethodSignature ResolveEntryPointSignature(AtsCapabilityInfo capability) 1309private string ResolveEntryPointReturnType(AtsCapabilityInfo capability) 1535private string GetCapabilityOwningAssemblyName(AtsCapabilityInfo capability) 1538/// <inheritdoc cref="GetCapabilityOwningAssemblyName(AtsCapabilityInfo)"/> 1543private static string GetCapabilityOwningAssemblyName(AtsContext context, AtsCapabilityInfo capability) 1560/// reason as <see cref="GetCapabilityOwningAssemblyName(AtsCapabilityInfo)"/>. 2091internal string ResolveOptionsInterfaceName(AtsCapabilityInfo capability) 2459internal static bool IsGetterOnlyProperty(AtsCapabilityInfo? getter, AtsCapabilityInfo? setter) => getter is not null && setter is null; 2509internal string GetBuilderPromiseInterfaceForMethod(BuilderModel builder, AtsCapabilityInfo capability) 2563internal static List<(string PropertyName, AtsCapabilityInfo? Getter, AtsCapabilityInfo? Setter)> GroupPropertiesByName( 2564List<AtsCapabilityInfo> getters, List<AtsCapabilityInfo> setters) 2566var result = new List<(string PropertyName, AtsCapabilityInfo? Getter, AtsCapabilityInfo? Setter)>(); 2570foreach (var getter in getters) 2581var setter = setters.FirstOrDefault(s => ExtractPropertyName(s.MethodName).Equals(setterName, StringComparison.OrdinalIgnoreCase)); 2587foreach (var setter in setters) 2643internal static List<BuilderModel> CreateBuilderModels(IReadOnlyList<AtsCapabilityInfo> capabilities) 2648var capabilitiesByTypeId = new Dictionary<string, List<AtsCapabilityInfo>>(); 2654var interfaceCapabilities = new Dictionary<string, List<AtsCapabilityInfo>>(); 2656foreach (var cap in capabilities) 2856private static void SortOptionsInterfaceCollisionsByCapabilityIdentity(List<AtsCapabilityInfo> capabilities) 2931internal static Dictionary<string, AtsTypeRef> CollectAllReferencedTypes(IReadOnlyList<AtsCapabilityInfo> capabilities) 2960foreach (var cap in capabilities) 2992internal static List<AtsCapabilityInfo> GetEntryPointCapabilities(IReadOnlyList<AtsCapabilityInfo> capabilities)
Aspire.Hosting.CodeGeneration.TypeScript.Tests (83)
AtsTypeScriptCodeGeneratorTests.cs (83)
146var addTestRedis = capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis"); 149var withPersistence = capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withPersistence"); 162var addTestRedis = capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis"); 174var addTestRedis = context.Capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis"); 221var capability = CreateDistributedApplicationBuilderCapability( 239var capability = CreateDistributedApplicationBuilderCapability( 342var capability = CreateDistributedApplicationBuilderCapability( 364var capability = CreateDistributedApplicationBuilderCapability( 410var nameGetterCapability = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests.TestTypes/TestCallbackContext.name"); 420var nameSetterCapability = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests.TestTypes/TestCallbackContext.setName"); 428var valueGetterCapability = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests.TestTypes/TestCallbackContext.value"); 435var valueSetterCapability = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests.TestTypes/TestCallbackContext.setValue"); 490var withOptionalString = capabilities 507var withOptionalString = capabilities 548var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis"); 564var addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis"); 570var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withPersistence"); 576var withRedisSpecific = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withRedisSpecific"); 612var withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withPersistence"); 624var withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withOptionalString"); 636var addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer"); 647var withBrowserLogs = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.Browsers/withBrowserLogs"); 705foreach (var cap in directContainerCapabilities) 735var withBindMount = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/withBindMount"); 745var withEnvironment = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/withEnvironment"); 762var withConnectionStringDirect = capabilities 790var withRedisSpecific = capabilities 818var withBindMount = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/withBindMount"); 843var withDependency = capabilities 899var capability = CreateVoidEntryPointCapability( 1020var withRedisSpecific = capabilities 1043var withConnectionStringDirect = capabilities 1077var testWithEnvironmentCallback = capabilities 1107var withReference = capabilities 1114var addContainer = capabilities 1120var withEnvironment = capabilities 1131var withReference = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting/withReference"); 1146var withVolume = capabilities 1163var withProjectVolume = Assert.Single( 1179var withExecutableVolume = Assert.Single( 1190var withBindMount = capabilities 1197var withCommand = capabilities 1239var capability = Assert.Single( 1251var withoutStorageClassCapability = Assert.Single( 1439var addTestRedis = scannedContext.Capabilities 1567private static AtsCapabilityInfo CreateSameNameResourceCapability<TResource>( 1569AtsCapabilityInfo distributedApplicationBuilderCapability) 1739var publishAsWebsite = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting.Azure.AppService/publishAsAzureAppServiceWebsite"); 1743var publishAsContainerAppJob = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting.Azure.AppContainers/publishAsAzureContainerAppJob"); 1757var capability = Assert.Single(result.Capabilities, c => c.CapabilityId == "Aspire.Hosting.Azure.AppContainers/asExpress"); 1802private static List<AtsCapabilityInfo> ScanCapabilitiesFromTestAssembly() 1820private static AtsContext WithAdditionalCapabilities(AtsContext context, params AtsCapabilityInfo[] capabilities) 1841private static AtsCapabilityInfo CreateVoidEntryPointCapability(string methodName, params AtsParameterInfo[] parameters) => 1855private static AtsCapabilityInfo CreateDistributedApplicationBuilderCapability( 1862var addTestRedis = context.Capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis"); 1891private static List<AtsCapabilityInfo> ScanCapabilitiesFromHostingAssembly() 1898private static List<AtsCapabilityInfo> ScanCapabilitiesFromBrowsersAssembly() 1912private static List<AtsCapabilityInfo> ScanCapabilitiesFromBothAssemblies() 1930private static List<AtsCapabilityInfo> ScanCapabilitiesFromAzureAssemblies() 1947private static void AssertCallbackParameterTypes(AtsCapabilityInfo capability, string parameterName, params Type[] expectedTypes) 1956private static void AssertTargetedMethod(IReadOnlyList<AtsCapabilityInfo> capabilities, string capabilityId, string methodName, Type targetType, Type parameterType) 1958var capability = Assert.Single(capabilities, c => c.CapabilityId == capabilityId); 1966private static void AssertAzureExistingResourceScopeCapability(IReadOnlyList<AtsCapabilityInfo> capabilities, string methodName, string[] parameterNames) 1968var capability = Assert.Single(capabilities, c => c.CapabilityId == $"Aspire.Hosting.Azure/{methodName}"); 2026var capability = capabilities.FirstOrDefault(c => c.CapabilityId == expectedId); 2046var capability = capabilities.FirstOrDefault(c => c.CapabilityId == expectedId); 2094var dictSet = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/Dict.set"); 2146var getValueAsync = capabilities.First(c => 2157var getValueAsync = capabilities.FirstOrDefault(c => 2171var addTestRedis = capabilities.First(c => 2242var getStatusAsync = capabilities 2273var withCancellableOperation = capabilities 2295var waitForReadyAsync = capabilities 2320var addDotnetProject = Assert.Single(context.Capabilities, capability => capability.CapabilityId == "Aspire.Hosting.Dotnet/addDotnetProject"); 2334var addCSharpApp = Assert.Single(context.Capabilities, capability => capability.CapabilityId == "Aspire.Hosting/addCSharpApp"); 2473var addTestRedis = capabilities 2570var collisionCapability = CreateVoidEntryPointCapability( 2640var withNpm = result.Capabilities 2671var capability = result.Capabilities 3033var eventHubsCapability = CreateRunAsEmulatorCapability( 3041var serviceBusCapability = CreateRunAsEmulatorCapability( 3232private static AtsContext CreateApiContext(params AtsCapabilityInfo[] capabilities) 3243private static AtsCapabilityInfo CreateRunAsEmulatorCapability(
Aspire.Hosting.RemoteHost (48)
Ats\CapabilityDispatcher.cs (11)
52public AtsCapabilityInfo? Capability { get; init; } 145foreach (var capability in result.Capabilities) 177private void RegisterContextTypeProperty(AtsCapabilityInfo capability, PropertyInfo property) 304private void RegisterContextTypeMethod(AtsCapabilityInfo capability, MethodInfo method) 417private void RegisterFromCapability(AtsCapabilityInfo capability, MethodInfo method) 777AtsCapabilityInfo capability, 821AtsCapabilityInfo capability, 894private static IReadOnlyList<Type>? GetUnionMemberClrTypes(ParameterInfo parameter, AtsCapabilityInfo capability) 904private static IReadOnlyList<Type>? GetUnionMemberClrTypes(PropertyInfo property, AtsCapabilityInfo capability, string parameterName) 936private static IReadOnlyList<Type>? TryGetUnionMemberClrTypes(AtsCapabilityInfo capability, string parameterName) 991AtsCapabilityInfo capability,
Ats\ExternalCapabilityRegistry.cs (2)
747private static AtsCapabilityInfo CreateProjectedCapability(ExternalCapabilityProjection capability) 825public required AtsCapabilityInfo ProjectedCapability { get; init; }
AtsCapabilityScanner.cs (22)
30public required List<AtsCapabilityInfo> Capabilities { get; init; } 141var allCapabilities = new List<AtsCapabilityInfo>(); 149var seenCapabilities = new Dictionary<string, AtsCapabilityInfo>(); // Track capability ID -> first capability for duplicate detection 160foreach (var capability in result.Capabilities) 162if (seenCapabilities.TryGetValue(capability.CapabilityId, out var existingCapability)) 373var capabilities = new List<AtsCapabilityInfo>(); 512var capability = CreateCapabilityInfo(method, exportAttr, assemblyName, assemblyExportedTypeCache, out var capabilityDiagnostic); 600List<AtsCapabilityInfo> capabilities, 610foreach (var capability in capabilities) 708List<AtsCapabilityInfo> capabilities, 712foreach (var capability in capabilities) 793List<AtsCapabilityInfo> capabilities, 901List<AtsCapabilityInfo> capabilities, 909foreach (var capability in capabilities) 1009private static void FilterMethodNameCollisions(List<AtsCapabilityInfo> capabilities, List<AtsDiagnostic> diagnostics) 1044var exactTargetCapability = exactTargetCapabilities[0]; 1045foreach (var collidingCapability in collidingCapabilities) 1080foreach (var capability in capabilities) 1098public static List<AtsCapabilityInfo> ScanCapabilities( 1591public required List<AtsCapabilityInfo> Capabilities { get; init; } 1615var capabilities = new List<AtsCapabilityInfo>(); 2052private static AtsCapabilityInfo? CreateCapabilityInfo(
AtsContextFilter.cs (10)
145foreach (var capability in capabilities) 165private static IEnumerable<string> GetCapabilityTargetTypeIds(AtsCapabilityInfo capability) 247foreach (var capability in filteredCapabilities) 291foreach (var capability in filteredCapabilities) 308private static IEnumerable<AtsCapabilityInfo> CreateApiExportSupportCapabilities( 309AtsCapabilityInfo capability, 359private static IReadOnlyList<AtsParameterInfo> CreateApiExportSupportParameters(AtsCapabilityInfo capability) 503AtsCapabilityInfo capability, 547foreach (var capability in context.Capabilities) 645foreach (var capability in context.Capabilities)
CodeGeneration\CodeGenerationService.cs (1)
111private static CapabilityResponse MapCapability(AtsCapabilityInfo c) => new()
Diagnostics\RemoteHostProfilingTelemetry.cs (2)
184public ActivityScope StartCapabilityInvoke(string capabilityId, AtsCapabilityInfo? capability) 436public void SetCapability(string capabilityId, AtsCapabilityInfo? capability)
Aspire.Hosting.RemoteHost.Tests (33)
AtsCapabilityScannerTests.cs (18)
156var enumerableParameterCapability = Assert.Single(result.Capabilities, 163var enumerableReturnCapability = Assert.Single(result.Capabilities, 188var capability = Assert.Single(result.Capabilities, 327var capability = Assert.Single(result.Capabilities, 402var capability = Assert.Single(result.Capabilities, capability => capability.OwningTypeName == typeName && capability.MethodName == methodName); 414var capability = Assert.Single(result.Capabilities, 468var baseNameCapability = Assert.Single(result.Capabilities, 488var nameGetter = Assert.Single(result.Capabilities, 493var descriptionGetter = Assert.Single(result.Capabilities, 499var mutableSetter = Assert.Single(result.Capabilities, 620var genericCapability = Assert.Single(result.Capabilities, 622var specificCapability = Assert.Single(result.Capabilities, 651var capability = result.Capabilities 678var capability = Assert.Single(result.Capabilities, 697var capability = Assert.Single(result.Capabilities, 716var capability = Assert.Single(result.Capabilities, 743var capability = Assert.Single(result.Capabilities, c => c.CapabilityId == expectedCapabilityId); 871var capability = Assert.Single(result.Capabilities,
AtsContextFilterTests.cs (4)
180var supportingCapability = new AtsCapabilityInfo 225var filteredSupport = Assert.Single( 496var selectedCapability = new AtsCapabilityInfo 553var unrelatedCapability = new AtsCapabilityInfo
AttributeDataReaderTests.cs (5)
138var capability = Assert.Single( 165var capability = Assert.Single(result.Capabilities); 210var compatibleCapability = result.Capabilities 225var officialCapability = result.Capabilities 227var thirdPartyCapability = result.Capabilities
ExternalCapabilityRegistryTests.cs (6)
540var capability = Assert.Single(registry.AugmentContext(CreateContext()).Capabilities); 568var capability = Assert.Single(registry.AugmentContext(CreateContext()).Capabilities); 889var managedCapability = new AtsCapabilityInfo 915var managedCapability = new AtsCapabilityInfo 974var capability = Assert.Single(augmented.Capabilities); 1014private static AtsContext CreateContext(params AtsCapabilityInfo[] capabilities)
Aspire.TypeSystem (1)
AtsContext.cs (1)
58public required IReadOnlyList<AtsCapabilityInfo> Capabilities { get; init; }