31 instantiations of AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.Java.Tests (6)
AtsJavaCodeGeneratorTests.cs (6)
2735
var callbackCapability = new
AtsCapabilityInfo
2767
var capability = new
AtsCapabilityInfo
2790
var capability = new
AtsCapabilityInfo
3006
var callbackCapability = new
AtsCapabilityInfo
3323
var capability = new
AtsCapabilityInfo
3647
return new
AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.Python (1)
AtsPythonCodeGenerator.cs (1)
409
var merged = new
AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.Python.Tests (6)
AtsPythonCodeGeneratorTests.cs (6)
507
new
AtsCapabilityInfo
563
new
AtsCapabilityInfo
639
new
AtsCapabilityInfo
723
new
AtsCapabilityInfo
827
new
AtsCapabilityInfo
849
new
AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.TypeScript.Tests (10)
AtsTypeScriptCodeGeneratorTests.cs (10)
1385
return new
AtsCapabilityInfo
1632
new
()
1653
return new
AtsCapabilityInfo
2579
new
AtsCapabilityInfo
2591
new
AtsCapabilityInfo
2603
new
AtsCapabilityInfo
2615
new
AtsCapabilityInfo
2871
new
AtsCapabilityInfo
2986
return new
AtsCapabilityInfo
3035
new
AtsCapabilityInfo
Aspire.Hosting.RemoteHost (5)
AtsCapabilityScanner.cs (4)
1681
capabilities.Add(new
AtsCapabilityInfo
1723
capabilities.Add(new
AtsCapabilityInfo
1902
capabilities.Add(new
AtsCapabilityInfo
2075
return new
AtsCapabilityInfo
AtsContextFilter.cs (1)
332
yield return new
AtsCapabilityInfo
Aspire.Hosting.RemoteHost.Tests (3)
AtsContextFilterTests.cs (3)
180
var supportingCapability = new
AtsCapabilityInfo
496
var selectedCapability = new
AtsCapabilityInfo
553
var unrelatedCapability = new
AtsCapabilityInfo
401 references to AtsCapabilityInfo
Aspire.Hosting.CodeGeneration.Go (42)
AtsGoCodeGenerator.cs (42)
166
foreach (
var
capability in context.Capabilities)
244
var optionsNameFirstCapability = new Dictionary<string,
AtsCapabilityInfo
>(StringComparer.Ordinal);
245
foreach (
var
capability in context.Capabilities)
282
if (optionsNameFirstCapability.TryGetValue(simpleName, out
var
firstCap)
387
private static Dictionary<string, List<
AtsCapabilityInfo
>> GroupCapabilitiesByDirectTarget(
388
IReadOnlyList<
AtsCapabilityInfo
> capabilities)
390
var result = new Dictionary<string, List<
AtsCapabilityInfo
>>(StringComparer.Ordinal);
391
foreach (
var
capability in capabilities)
399
list = new List<
AtsCapabilityInfo
>();
412
private Dictionary<string, List<
AtsCapabilityInfo
>> GroupCapabilitiesByConcreteImpl(
413
IReadOnlyList<
AtsCapabilityInfo
> capabilities)
415
var result = new Dictionary<string, List<
AtsCapabilityInfo
>>(StringComparer.Ordinal);
417
foreach (
var
capability in capabilities)
444
list = new List<
AtsCapabilityInfo
>();
782
private void GenerateMarkerInterfaces(Dictionary<string, List<
AtsCapabilityInfo
>> capabilitiesByDirectTarget)
816
private void GenerateConcreteHandleTypes(Dictionary<string, List<
AtsCapabilityInfo
>> capabilitiesByConcreteImpl)
837
: new List<
AtsCapabilityInfo
>();
845
foreach (
var
capability in capabilities)
858
CollectListDictGetters(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
861
foreach (
var
capability in capabilities)
894
IReadOnlyList<
AtsCapabilityInfo
> capabilities,
904
foreach (
var
capability in capabilities)
1023
private string RenderMethodSignature(string currentTypeId, string interfaceName,
AtsCapabilityInfo
capability)
1077
AtsCapabilityInfo
capability)
1162
private string RenderReturnSignature(string currentTypeId, string interfaceName,
AtsCapabilityInfo
capability)
1188
private static bool IsSameType(string? typeId,
AtsCapabilityInfo
capability, string? currentTypeId = null)
1215
AtsCapabilityInfo
capability,
1270
AtsCapabilityInfo
capability,
1343
AtsCapabilityInfo
capability,
1368
AtsCapabilityInfo
capability,
1389
private void EmitHandleParamErrorChecks(string indent,
AtsCapabilityInfo
capability, string errorAction)
1406
AtsCapabilityInfo
capability,
1649
private void GenerateOptionsStructs(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
1655
foreach (
var
capability in capabilities)
1753
private string GetOptionsTypeName(
AtsCapabilityInfo
capability)
1760
private string GetOptionsQualifiedName(
AtsCapabilityInfo
capability, string simpleName)
1776
private bool AreOptionsCompatible(
AtsCapabilityInfo
a,
AtsCapabilityInfo
b)
1825
private static List<AtsParameterInfo> GetUnionParameters(
AtsCapabilityInfo
capability)
1854
AtsCapabilityInfo
capability,
1874
private void EmitUnionAllowedTypesDoc(
AtsCapabilityInfo
capability)
1902
AtsCapabilityInfo
capability,
Aspire.Hosting.CodeGeneration.Go.Tests (12)
AtsGoCodeGeneratorTests.cs (12)
147
var
addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
150
var
withPersistence = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
161
var
addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
176
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
182
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
194
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
206
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
218
var
withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withOptionalString");
230
var
addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer");
515
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromTestAssembly()
539
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromHostingAssembly()
546
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromBothAssemblies()
Aspire.Hosting.CodeGeneration.Java (18)
AtsJavaCodeGenerator.cs (18)
929
private void CollectOptionsClasses(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
931
foreach (
var
capability in capabilities)
1091
private string? ResolveOptionsClassName(
AtsCapabilityInfo
capability) =>
1233
Dictionary<string, List<
AtsCapabilityInfo
>> capabilitiesByTarget)
1256
foreach (
var
method in methods)
1342
private void GenerateCapabilityMethod(JavaHandleType handleType,
AtsCapabilityInfo
capability)
1707
AtsCapabilityInfo
capability,
1780
private void GenerateCapabilityMethodImplementation(
AtsCapabilityInfo
capability, JavaCapabilityReturnInfo returnInfo, string methodName, string targetParamName, List<AtsParameterInfo> parameters, bool isPublic)
1862
private JavaCapabilityReturnInfo GetMethodReturnInfo(JavaHandleType handleType,
AtsCapabilityInfo
capability)
2234
private void GenerateListOrDictProperty(
AtsCapabilityInfo
capability, string methodName)
2406
foreach (
var
capability in context.Capabilities)
2481
private static Dictionary<string, List<
AtsCapabilityInfo
>> GroupCapabilitiesByTarget(
2482
IReadOnlyList<
AtsCapabilityInfo
> capabilities)
2484
var result = new Dictionary<string, List<
AtsCapabilityInfo
>>(StringComparer.Ordinal);
2486
foreach (
var
capability in capabilities)
2508
list = new List<
AtsCapabilityInfo
>();
2518
private static Dictionary<string, bool> CollectListAndDictTypeIds(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
2522
foreach (
var
capability in capabilities)
Aspire.Hosting.CodeGeneration.Java.Tests (21)
AtsJavaCodeGeneratorTests.cs (21)
115
var
addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
118
var
withPersistence = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
129
var
addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
144
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
150
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
162
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
174
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
186
var
withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withOptionalString");
198
var
addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer");
209
var
withReference = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting/withReference");
212
var
waitFor = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting/waitFor");
2548
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromTestAssembly()
2572
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromHostingAssembly()
2579
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromBothAssemblies()
2735
var
callbackCapability = new AtsCapabilityInfo
2767
var
capability = new AtsCapabilityInfo
2790
var
capability = new AtsCapabilityInfo
3006
var
callbackCapability = new AtsCapabilityInfo
3323
var
capability = new AtsCapabilityInfo
3634
private static AtsContext CreateContextWithProbeCapabilities(AtsTypeRef resourceType, params
AtsCapabilityInfo
[] capabilities)
3645
private static
AtsCapabilityInfo
CreateProbeCapability(AtsTypeRef resourceType, string methodName, AtsTypeRef returnType)
Aspire.Hosting.CodeGeneration.Python (46)
AtsPythonCodeGenerator.cs (46)
22
public required List<
AtsCapabilityInfo
> Capabilities { get; init; }
313
/// Merges capabilities that share the same <see cref="
AtsCapabilityInfo
.SourceLocation"/> and differ
317
private List<
AtsCapabilityInfo
> MergeCapabilitiesBySourceLocation(List<
AtsCapabilityInfo
> capabilities)
319
var result = new List<
AtsCapabilityInfo
>();
335
foreach (
var
item in items.Skip(1))
357
var
capWithExtra = items.First(c => c.Parameters.Any(p => string.Equals(p.Name, extraParamName, StringComparison.Ordinal)));
374
var
shortest = items.OrderBy(c => c.MethodName.Length).ThenBy(c => c.MethodName, StringComparer.Ordinal).First();
377
var
fullCap = items.OrderByDescending(c => c.Parameters.Count).First();
405
var
capWithoutExtra = items.FirstOrDefault(c => !c.Parameters.Any(p => string.Equals(p.Name, extraParamName, StringComparison.Ordinal)));
409
var
merged = new AtsCapabilityInfo
686
private static string? GetReturnTypeId(
AtsCapabilityInfo
capability) => capability.ReturnType?.TypeId;
797
foreach (
var
cap in capabilities)
1151
foreach (
var
method in allMethods)
1199
private static List<(string PropertyName,
AtsCapabilityInfo
? Getter,
AtsCapabilityInfo
? Setter)> GroupPropertiesByName(
1200
List<
AtsCapabilityInfo
> getters, List<
AtsCapabilityInfo
> setters)
1202
var result = new List<(string PropertyName,
AtsCapabilityInfo
? Getter,
AtsCapabilityInfo
? Setter)>();
1206
foreach (
var
getter in getters)
1217
var
setter = setters.FirstOrDefault(s => ExtractPropertyName(s.MethodName).Equals(setterName, StringComparison.OrdinalIgnoreCase));
1223
foreach (
var
setter in setters)
1257
private void GeneratePropertyMethods(System.Text.StringBuilder sb, string propertyName,
AtsCapabilityInfo
? getter,
AtsCapabilityInfo
? setter, bool isInterface = false)
1345
AtsCapabilityInfo
capability,
1503
foreach (
var
capability in methods)
1637
foreach (
var
capability in methods)
1657
private void GenerateBuilderMethod(System.Text.StringBuilder sb,
AtsCapabilityInfo
capability, bool isInterface,
1803
private void GenerateEntryPointFunctions(System.Text.StringBuilder sb, List<
AtsCapabilityInfo
> entryPoints)
1810
foreach (
var
capability in entryPoints)
1816
private void GenerateEntryPointFunction(System.Text.StringBuilder sb,
AtsCapabilityInfo
capability)
1904
private List<BuilderModel> CreateBuilderModels(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
1907
var capabilitiesByTypeId = new Dictionary<string, List<
AtsCapabilityInfo
>>();
1913
var interfaceCapabilities = new Dictionary<string, List<
AtsCapabilityInfo
>>();
1915
foreach (
var
cap in capabilities)
2043
var applicableCapabilities = new List<
AtsCapabilityInfo
>();
2163
private Dictionary<string, AtsTypeRef> CollectAllReferencedTypes(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
2207
foreach (
var
cap in capabilities)
2235
private static List<
AtsCapabilityInfo
> GetEntryPointCapabilities(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
2445
AtsCapabilityInfo
capability,
2515
private string AddParameterMapping(
AtsCapabilityInfo
capability, List<AtsParameterInfo> requiredParameters, List<AtsParameterInfo> optionalParameters)
2540
private string ResolveParameterMappingName(
AtsCapabilityInfo
capability, List<AtsParameterInfo> requiredParameters, List<AtsParameterInfo> optionalParameters)
2591
private static string GetNamespaceQualifiedParameterMappingName(
AtsCapabilityInfo
capability)
2677
AtsCapabilityInfo
capability,
Aspire.Hosting.CodeGeneration.Python.Tests (12)
AtsPythonCodeGeneratorTests.cs (12)
84
var
addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
87
var
withPersistence = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
98
var
addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
113
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
119
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
131
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
143
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
155
var
withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withOptionalString");
167
var
addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer");
438
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromTestAssembly()
462
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromHostingAssembly()
469
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromBothAssemblies()
Aspire.Hosting.CodeGeneration.Rust (12)
AtsRustCodeGenerator.cs (12)
400
Dictionary<string, List<
AtsCapabilityInfo
>> capabilitiesByTarget)
445
foreach (
var
method in methods)
456
private void GenerateCapabilityMethod(string structName,
AtsCapabilityInfo
capability)
658
private void GenerateListOrDictProperty(string structName,
AtsCapabilityInfo
capability, string methodName)
789
foreach (
var
capability in context.Capabilities)
838
private static Dictionary<string, List<
AtsCapabilityInfo
>> GroupCapabilitiesByTarget(
839
IReadOnlyList<
AtsCapabilityInfo
> capabilities)
841
var result = new Dictionary<string, List<
AtsCapabilityInfo
>>(StringComparer.Ordinal);
843
foreach (
var
capability in capabilities)
865
list = new List<
AtsCapabilityInfo
>();
875
private static HashSet<string> CollectListAndDictTypeIds(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
878
foreach (
var
capability in capabilities)
Aspire.Hosting.CodeGeneration.Rust.Tests (12)
AtsRustCodeGeneratorTests.cs (12)
143
var
addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
146
var
withPersistence = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
157
var
addTestRedis = capabilities.First(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
172
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
178
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
190
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/addTestRedis");
202
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withPersistence");
214
var
withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == $"{TestTypesAssemblyName}/withOptionalString");
226
var
addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer");
342
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromTestAssembly()
366
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromHostingAssembly()
373
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromBothAssemblies()
Aspire.Hosting.CodeGeneration.TypeScript (78)
AtsTypeScriptCodeGenerator.cs (38)
19
public required List<
AtsCapabilityInfo
> Capabilities { get; init; }
113
AtsCapabilityInfo
capability,
140
private void WritePropertyDocComment(string indent,
AtsCapabilityInfo
? getter,
AtsCapabilityInfo
? setter)
142
var
capability = getter is not null && (getter.Documentation is not null || !string.IsNullOrWhiteSpace(getter.Description) || getter.IsObsolete)
418
private static string? GetReturnTypeId(
AtsCapabilityInfo
capability) => capability.ReturnType?.TypeId;
740
private void GenerateGetterOnlyPropertyPromiseSignature(string propertyName,
AtsCapabilityInfo
getter)
747
private void GenerateInterfaceProperty(string propertyName,
AtsCapabilityInfo
? getter,
AtsCapabilityInfo
? setter)
827
foreach (
var
capability in builder.Capabilities.Where(c =>
883
foreach (
var
capability in capabilities)
911
private void GenerateTypeClassInterfaceMethod(BuilderModel model, string className,
AtsCapabilityInfo
capability)
961
foreach (
var
method in standardMethods)
980
foreach (
var
method in standardMethods)
1027
foreach (
var
capability in builder.Capabilities.Where(c =>
1070
private void GenerateBuilderMethod(BuilderModel builder,
AtsCapabilityInfo
capability)
1579
foreach (
var
capability in capabilities)
1648
private void GenerateAspireClient(List<
AtsCapabilityInfo
> entryPoints)
1660
foreach (
var
capability in entryPoints)
1686
private void GenerateEntryPointFunction(
AtsCapabilityInfo
capability)
2145
foreach (
var
method in allMethods)
2153
foreach (
var
method in contextMethods)
2157
foreach (
var
method in otherMethods)
2196
private void GeneratePropertyLikeObject(string propertyName,
AtsCapabilityInfo
? getter,
AtsCapabilityInfo
? setter)
2280
private void GenerateGetterOnlyPropertyMethod(string propertyName,
AtsCapabilityInfo
getter)
2340
private void GenerateWrapperGetterOnlyPropertyMethod(string propertyName,
AtsCapabilityInfo
getter, string wrapperClassName)
2394
private void GenerateWrapperPropertyObject(string propertyName,
AtsCapabilityInfo
getter,
AtsCapabilityInfo
? setter, string wrapperClassName)
2447
private void GenerateDictionaryProperty(string propertyName,
AtsCapabilityInfo
getter)
2483
private void GenerateMutableDictionaryProperty(string propertyName,
AtsCapabilityInfo
getter)
2519
private void GenerateListProperty(string propertyName,
AtsCapabilityInfo
getter)
2548
private void GenerateMutableListProperty(string propertyName,
AtsCapabilityInfo
getter)
2591
private void GenerateContextMethod(
AtsCapabilityInfo
method)
2707
private void GenerateWrapperMethod(
AtsCapabilityInfo
capability)
2818
private void GenerateTypeClassMethod(BuilderModel model,
AtsCapabilityInfo
capability)
3032
private void GenerateTypeClassThenableWrapper(BuilderModel model, List<
AtsCapabilityInfo
> methods)
3057
foreach (
var
capability in methods)
TypeScriptApiModel.cs (1)
307
public required List<
AtsCapabilityInfo
> ClientMethods { get; init; }
TypeScriptApiProjector.cs (39)
275
foreach (
var
cap in builders
308
internal TypeScriptApiMethodSignature ResolveMethodSignature(BuilderModel? builder,
AtsCapabilityInfo
capability)
380
private static string ResolveTypeClassMethodName(
AtsCapabilityInfo
capability)
390
private string ResolveBuilderReturnType(BuilderModel? builder,
AtsCapabilityInfo
capability)
417
private string ResolveTypeClassReturnType(BuilderModel builder,
AtsCapabilityInfo
capability)
485
foreach (
var
entryPoint in _resolved.ClientMethods.OrderBy(c => c.MethodName, StringComparer.Ordinal))
1005
foreach (
var
capability in methods)
1151
AtsCapabilityInfo
capability)
1174
AtsCapabilityInfo
? getter,
1175
AtsCapabilityInfo
? setter)
1229
private (TypeScriptApiItem Item, TypeScriptApiDeclaration Declaration) ProjectEntryPoint(
AtsCapabilityInfo
capability)
1274
internal TypeScriptApiMethodSignature ResolveEntryPointSignature(
AtsCapabilityInfo
capability)
1305
private string ResolveEntryPointReturnType(
AtsCapabilityInfo
capability)
1531
private string GetCapabilityOwningAssemblyName(
AtsCapabilityInfo
capability)
1534
/// <inheritdoc cref="GetCapabilityOwningAssemblyName(
AtsCapabilityInfo
)"/>
1539
private static string GetCapabilityOwningAssemblyName(AtsContext context,
AtsCapabilityInfo
capability)
1556
/// reason as <see cref="GetCapabilityOwningAssemblyName(
AtsCapabilityInfo
)"/>.
2087
internal string ResolveOptionsInterfaceName(
AtsCapabilityInfo
capability)
2455
internal static bool IsGetterOnlyProperty(
AtsCapabilityInfo
? getter,
AtsCapabilityInfo
? setter) => getter is not null && setter is null;
2505
internal string GetBuilderPromiseInterfaceForMethod(BuilderModel builder,
AtsCapabilityInfo
capability)
2559
internal static List<(string PropertyName,
AtsCapabilityInfo
? Getter,
AtsCapabilityInfo
? Setter)> GroupPropertiesByName(
2560
List<
AtsCapabilityInfo
> getters, List<
AtsCapabilityInfo
> setters)
2562
var result = new List<(string PropertyName,
AtsCapabilityInfo
? Getter,
AtsCapabilityInfo
? Setter)>();
2566
foreach (
var
getter in getters)
2577
var
setter = setters.FirstOrDefault(s => ExtractPropertyName(s.MethodName).Equals(setterName, StringComparison.OrdinalIgnoreCase));
2583
foreach (
var
setter in setters)
2639
internal static List<BuilderModel> CreateBuilderModels(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
2644
var capabilitiesByTypeId = new Dictionary<string, List<
AtsCapabilityInfo
>>();
2650
var interfaceCapabilities = new Dictionary<string, List<
AtsCapabilityInfo
>>();
2652
foreach (
var
cap in capabilities)
2852
private static void SortOptionsInterfaceCollisionsByCapabilityIdentity(List<
AtsCapabilityInfo
> capabilities)
2927
internal static Dictionary<string, AtsTypeRef> CollectAllReferencedTypes(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
2956
foreach (
var
cap in capabilities)
2988
internal static List<
AtsCapabilityInfo
> GetEntryPointCapabilities(IReadOnlyList<
AtsCapabilityInfo
> capabilities)
Aspire.Hosting.CodeGeneration.TypeScript.Tests (77)
AtsTypeScriptCodeGeneratorTests.cs (77)
144
var
addTestRedis = capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis");
147
var
withPersistence = capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withPersistence");
160
var
addTestRedis = capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis");
172
var
addTestRedis = context.Capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis");
219
var
capability = CreateDistributedApplicationBuilderCapability(
237
var
capability = CreateDistributedApplicationBuilderCapability(
259
var
capability = CreateDistributedApplicationBuilderCapability(
305
var
nameGetterCapability = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests.TestTypes/TestCallbackContext.name");
315
var
nameSetterCapability = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests.TestTypes/TestCallbackContext.setName");
323
var
valueGetterCapability = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests.TestTypes/TestCallbackContext.value");
330
var
valueSetterCapability = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests.TestTypes/TestCallbackContext.setValue");
385
var
withOptionalString = capabilities
402
var
withOptionalString = capabilities
443
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis");
459
var
addTestRedis = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis");
465
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withPersistence");
471
var
withRedisSpecific = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withRedisSpecific");
507
var
withPersistence = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withPersistence");
519
var
withOptionalString = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/withOptionalString");
531
var
addContainer = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/addContainer");
542
var
withBrowserLogs = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting.Browsers/withBrowserLogs");
600
foreach (
var
cap in directContainerCapabilities)
630
var
withBindMount = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/withBindMount");
640
var
withEnvironment = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/withEnvironment");
657
var
withConnectionStringDirect = capabilities
685
var
withRedisSpecific = capabilities
713
var
withBindMount = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/withBindMount");
738
var
withDependency = capabilities
794
var
capability = CreateVoidEntryPointCapability(
859
var
withRedisSpecific = capabilities
882
var
withConnectionStringDirect = capabilities
916
var
testWithEnvironmentCallback = capabilities
946
var
withReference = capabilities
953
var
addContainer = capabilities
959
var
withEnvironment = capabilities
970
var
withReference = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting/withReference");
985
var
withVolume = capabilities
1002
var
withProjectVolume = Assert.Single(
1018
var
withExecutableVolume = Assert.Single(
1029
var
withBindMount = capabilities
1036
var
withCommand = capabilities
1244
var
addTestRedis = scannedContext.Capabilities
1372
private static
AtsCapabilityInfo
CreateSameNameResourceCapability<TResource>(
1374
AtsCapabilityInfo
distributedApplicationBuilderCapability)
1544
var
publishAsWebsite = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting.Azure.AppService/publishAsAzureAppServiceWebsite");
1548
var
publishAsContainerAppJob = Assert.Single(capabilities, c => c.CapabilityId == "Aspire.Hosting.Azure.AppContainers/publishAsAzureContainerAppJob");
1592
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromTestAssembly()
1610
private static AtsContext WithAdditionalCapabilities(AtsContext context, params
AtsCapabilityInfo
[] capabilities)
1631
private static
AtsCapabilityInfo
CreateVoidEntryPointCapability(string methodName, params AtsParameterInfo[] parameters) =>
1645
private static
AtsCapabilityInfo
CreateDistributedApplicationBuilderCapability(
1651
var
addTestRedis = context.Capabilities.First(c => c.CapabilityId == "Aspire.Hosting.CodeGeneration.TypeScript.Tests/addTestRedis");
1679
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromHostingAssembly()
1686
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromBrowsersAssembly()
1700
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromBothAssemblies()
1718
private static List<
AtsCapabilityInfo
> ScanCapabilitiesFromAzureAssemblies()
1735
private static void AssertCallbackParameterTypes(
AtsCapabilityInfo
capability, string parameterName, params Type[] expectedTypes)
1744
private static void AssertTargetedMethod(IReadOnlyList<
AtsCapabilityInfo
> capabilities, string capabilityId, string methodName, Type targetType, Type parameterType)
1746
var
capability = Assert.Single(capabilities, c => c.CapabilityId == capabilityId);
1754
private static void AssertAzureExistingResourceScopeCapability(IReadOnlyList<
AtsCapabilityInfo
> capabilities, string methodName, string[] parameterNames)
1756
var
capability = Assert.Single(capabilities, c => c.CapabilityId == $"Aspire.Hosting.Azure/{methodName}");
1814
var
capability = capabilities.FirstOrDefault(c => c.CapabilityId == expectedId);
1834
var
capability = capabilities.FirstOrDefault(c => c.CapabilityId == expectedId);
1882
var
dictSet = capabilities.FirstOrDefault(c => c.CapabilityId == "Aspire.Hosting/Dict.set");
1934
var
getValueAsync = capabilities.First(c =>
1945
var
getValueAsync = capabilities.FirstOrDefault(c =>
1959
var
addTestRedis = capabilities.First(c =>
2030
var
getStatusAsync = capabilities
2061
var
withCancellableOperation = capabilities
2083
var
waitForReadyAsync = capabilities
2205
var
addTestRedis = capabilities
2302
var
collisionCapability = CreateVoidEntryPointCapability(
2372
var
withNpm = result.Capabilities
2403
var
capability = result.Capabilities
2765
var
eventHubsCapability = CreateRunAsEmulatorCapability(
2773
var
serviceBusCapability = CreateRunAsEmulatorCapability(
2964
private static AtsContext CreateApiContext(params
AtsCapabilityInfo
[] capabilities)
2975
private static
AtsCapabilityInfo
CreateRunAsEmulatorCapability(
Aspire.Hosting.RemoteHost (46)
Ats\CapabilityDispatcher.cs (11)
51
public
AtsCapabilityInfo
? Capability { get; init; }
141
foreach (
var
capability in result.Capabilities)
173
private void RegisterContextTypeProperty(
AtsCapabilityInfo
capability, PropertyInfo property)
300
private void RegisterContextTypeMethod(
AtsCapabilityInfo
capability, MethodInfo method)
413
private void RegisterFromCapability(
AtsCapabilityInfo
capability, MethodInfo method)
750
AtsCapabilityInfo
capability,
794
AtsCapabilityInfo
capability,
867
private static IReadOnlyList<Type>? GetUnionMemberClrTypes(ParameterInfo parameter,
AtsCapabilityInfo
capability)
877
private static IReadOnlyList<Type>? GetUnionMemberClrTypes(PropertyInfo property,
AtsCapabilityInfo
capability, string parameterName)
909
private static IReadOnlyList<Type>? TryGetUnionMemberClrTypes(
AtsCapabilityInfo
capability, string parameterName)
964
AtsCapabilityInfo
capability,
AtsCapabilityScanner.cs (22)
30
public required List<
AtsCapabilityInfo
> Capabilities { get; init; }
141
var allCapabilities = new List<
AtsCapabilityInfo
>();
149
var seenCapabilities = new Dictionary<string,
AtsCapabilityInfo
>(); // Track capability ID -> first capability for duplicate detection
160
foreach (
var
capability in result.Capabilities)
162
if (seenCapabilities.TryGetValue(capability.CapabilityId, out
var
existingCapability))
299
var capabilities = new List<
AtsCapabilityInfo
>();
438
var
capability = CreateCapabilityInfo(method, exportAttr, assemblyName, assemblyExportedTypeCache, out var capabilityDiagnostic);
526
List<
AtsCapabilityInfo
> capabilities,
536
foreach (
var
capability in capabilities)
634
List<
AtsCapabilityInfo
> capabilities,
638
foreach (
var
capability in capabilities)
719
List<
AtsCapabilityInfo
> capabilities,
827
List<
AtsCapabilityInfo
> capabilities,
835
foreach (
var
capability in capabilities)
935
private static void FilterMethodNameCollisions(List<
AtsCapabilityInfo
> capabilities, List<AtsDiagnostic> diagnostics)
970
var
exactTargetCapability = exactTargetCapabilities[0];
971
foreach (
var
collidingCapability in collidingCapabilities)
1006
foreach (
var
capability in capabilities)
1024
public static List<
AtsCapabilityInfo
> ScanCapabilities(
1517
public required List<
AtsCapabilityInfo
> Capabilities { get; init; }
1541
var capabilities = new List<
AtsCapabilityInfo
>();
1973
private static
AtsCapabilityInfo
? CreateCapabilityInfo(
AtsContextFilter.cs (10)
145
foreach (
var
capability in capabilities)
165
private static IEnumerable<string> GetCapabilityTargetTypeIds(
AtsCapabilityInfo
capability)
247
foreach (
var
capability in filteredCapabilities)
291
foreach (
var
capability in filteredCapabilities)
308
private static IEnumerable<
AtsCapabilityInfo
> CreateApiExportSupportCapabilities(
309
AtsCapabilityInfo
capability,
358
private static IReadOnlyList<AtsParameterInfo> CreateApiExportSupportParameters(
AtsCapabilityInfo
capability)
502
AtsCapabilityInfo
capability,
546
foreach (
var
capability in context.Capabilities)
644
foreach (
var
capability in context.Capabilities)
CodeGeneration\CodeGenerationService.cs (1)
103
private static CapabilityResponse MapCapability(
AtsCapabilityInfo
c) => new()
Diagnostics\RemoteHostProfilingTelemetry.cs (2)
178
public ActivityScope StartCapabilityInvoke(string capabilityId,
AtsCapabilityInfo
? capability)
419
public void SetCapability(string capabilityId,
AtsCapabilityInfo
? capability)
Aspire.Hosting.RemoteHost.Tests (24)
AtsCapabilityScannerTests.cs (17)
155
var
enumerableParameterCapability = Assert.Single(result.Capabilities,
162
var
enumerableReturnCapability = Assert.Single(result.Capabilities,
187
var
capability = Assert.Single(result.Capabilities,
314
var
capability = Assert.Single(result.Capabilities,
380
var
capability = Assert.Single(result.Capabilities,
434
var
baseNameCapability = Assert.Single(result.Capabilities,
454
var
nameGetter = Assert.Single(result.Capabilities,
459
var
descriptionGetter = Assert.Single(result.Capabilities,
465
var
mutableSetter = Assert.Single(result.Capabilities,
510
var
genericCapability = Assert.Single(result.Capabilities,
512
var
specificCapability = Assert.Single(result.Capabilities,
541
var
capability = result.Capabilities
568
var
capability = Assert.Single(result.Capabilities,
587
var
capability = Assert.Single(result.Capabilities,
606
var
capability = Assert.Single(result.Capabilities,
633
var
capability = Assert.Single(result.Capabilities, c => c.CapabilityId == expectedCapabilityId);
761
var
capability = Assert.Single(result.Capabilities,
AtsContextFilterTests.cs (4)
180
var
supportingCapability = new AtsCapabilityInfo
225
var
filteredSupport = Assert.Single(
496
var
selectedCapability = new AtsCapabilityInfo
553
var
unrelatedCapability = new AtsCapabilityInfo
AttributeDataReaderTests.cs (3)
170
var
compatibleCapability = result.Capabilities
185
var
officialCapability = result.Capabilities
187
var
thirdPartyCapability = result.Capabilities
Aspire.TypeSystem (1)
AtsContext.cs (1)
58
public required IReadOnlyList<
AtsCapabilityInfo
> Capabilities { get; init; }