Skip to content

Commit 3998ee0

Browse files
author
Guy Fankam
committed
Extract related product resources (closes #635).
1 parent 457a8c4 commit 3998ee0

File tree

1 file changed

+18
-1
lines changed

1 file changed

+18
-1
lines changed

tools/code/extractor/Product.cs

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ public static void ConfigureExtractProducts(IHostApplicationBuilder builder)
2424
{
2525
ConfigureListProducts(builder);
2626
ConfigureWriteProductArtifacts(builder);
27+
ProductPolicyModule.ConfigureExtractProductPolicies(builder);
28+
ProductGroupModule.ConfigureExtractProductGroups(builder);
29+
ProductTagModule.ConfigureExtractProductTags(builder);
30+
ProductApiModule.ConfigureExtractProductApis(builder);
2731

2832
builder.Services.TryAddSingleton(GetExtractProducts);
2933
}
@@ -32,6 +36,10 @@ private static ExtractProducts GetExtractProducts(IServiceProvider provider)
3236
{
3337
var list = provider.GetRequiredService<ListProducts>();
3438
var writeArtifacts = provider.GetRequiredService<WriteProductArtifacts>();
39+
var extractPolicies = provider.GetRequiredService<ExtractProductPolicies>();
40+
var extractGroups = provider.GetRequiredService<ExtractProductGroups>();
41+
var extractTags = provider.GetRequiredService<ExtractProductTags>();
42+
var extractApis = provider.GetRequiredService<ExtractProductApis>();
3543
var activitySource = provider.GetRequiredService<ActivitySource>();
3644
var logger = provider.GetRequiredService<ILogger>();
3745

@@ -42,9 +50,18 @@ private static ExtractProducts GetExtractProducts(IServiceProvider provider)
4250
logger.LogInformation("Extracting products...");
4351

4452
await list(cancellationToken)
45-
.IterParallel(async resource => await writeArtifacts(resource.Name, resource.Dto, cancellationToken),
53+
.IterParallel(async resource => await extractProduct(resource.Name, resource.Dto, cancellationToken),
4654
cancellationToken);
4755
};
56+
57+
async ValueTask extractProduct(ProductName name, ProductDto dto, CancellationToken cancellationToken)
58+
{
59+
await writeArtifacts(name, dto, cancellationToken);
60+
await extractPolicies(name, cancellationToken);
61+
await extractGroups(name, cancellationToken);
62+
await extractTags(name, cancellationToken);
63+
await extractApis(name, cancellationToken);
64+
}
4865
}
4966

5067
private static void ConfigureListProducts(IHostApplicationBuilder builder)

0 commit comments

Comments
 (0)