Skip to content
This repository was archived by the owner on Dec 14, 2018. It is now read-only.

Commit 4f1c82c

Browse files
committed
Remove batching requirements placed on code and document generator providers
- #8419 - perform final item additions in common code too - take advantage of new simplicity in `DefaultDocumentGenerator` targets
1 parent 792d5b4 commit 4f1c82c

File tree

2 files changed

+22
-26
lines changed

2 files changed

+22
-26
lines changed

src/Microsoft.Extensions.ApiDescription.Client/build/Microsoft.Extensions.ApiDescription.Client.props

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
<ServiceFileReferenceTypeScriptNamespace Condition="'$(ServiceFileReferenceTypeScriptNamespace)' == ''">$(RootNamespace)</ServiceFileReferenceTypeScriptNamespace>
2828

2929
<DefaultDocumentGeneratorDependsOn>
30-
_DefaultDocumentGenerator_GetMetadata;
3130
_DefaultDocumentGenerator_Core;
3231
_DefaultDocumentGenerator_SetMetadata
3332
</DefaultDocumentGeneratorDependsOn>

src/Microsoft.Extensions.ApiDescription.Client/build/Microsoft.Extensions.ApiDescription.Client.targets

Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -113,45 +113,36 @@
113113

114114
<Target Name="_ServiceProjectReferenceGenerator_Core"
115115
Condition="'@(ServiceProjectReference)' != ''"
116-
DependsOnTargets="@(ServiceProjectReference -> '%(DocumentGenerator)DocumentGenerator')" />
116+
Inputs="@(ServiceProjectReference)"
117+
Outputs="@(ServiceProjectReference -> '%(DocumentPath)')">
118+
<MSBuild BuildInParallel="$(BuildInParallel)"
119+
Projects="$(MSBuildProjectFullPath)"
120+
Properties="GeneratorTargetPath=%(DocumentPath)"
121+
Targets="%(DocumentGenerator)DocumentGenerator" />
122+
</Target>
117123

118124
<Target Name="ServiceProjectReferenceGenerator"
119125
Condition="'@(ServiceProjectReference)' != ''"
120126
DependsOnTargets="$(ServiceProjectReferenceGeneratorDependsOn)" />
121127

122128
<!-- DefaultDocumentGenerator -->
123129

124-
<Target Name="_DefaultDocumentGenerator_GetMetadata">
125-
<ItemGroup>
126-
<_Temporary Remove="@(_Temporary)" />
127-
<_Temporary Include="@(ServiceProjectReference -> WithMetadataValue('DocumentGenerator', 'Default'))" />
128-
</ItemGroup>
129-
130-
<Error Condition="'@(_Temporary)' != '' AND '%(_Temporary.Method)' != '' AND '%(_Temporary.Uri)' != ''"
131-
Text="ServiceProjectReference items '@(_Temporary)' have both Method and Uri metadata." />
132-
<Error Condition="'@(_Temporary)' != '' AND '%(_Temporary.Service)' != '' AND '%(_Temporary.Uri)' != ''"
133-
Text="ServiceProjectReference items '@(_Temporary)' have both Service and Uri metadata." />
134-
</Target>
135-
136-
<Target Name="_DefaultDocumentGenerator_Core" Inputs="%(_Temporary.ProjectTargetPath)" Outputs="%(_Temporary.DocumentPath)">
130+
<Target Name="_DefaultDocumentGenerator_Core">
137131
<!-- aspnetcore2swagger -->
138132
<PropertyGroup>
139133
<_Command>dotnet getdocument --configuration $(Configuration) --no-build</_Command>
140134
</PropertyGroup>
141135
<ItemGroup>
136+
<_Temporary Remove="@(_Temporary)" />
137+
<_Temporary Include="@(ServiceProjectReference)" Condition="'%(DocumentPath)' == '$(GeneratorTargetPath)'" />
142138
<_Temporary Update="@(_Temporary)">
143-
<Options
144-
Condition="'%(_Temporary.Options)' == '' AND '$(DefaultDocumentGeneratorDefaultOptions)' != ''">$(DefaultDocumentGeneratorDefaultOptions)</Options>
145139
<Command>$(_Command) --project %(FullPath) --output %(DocumentPath) --framework %(TargetFramework)</Command>
146-
</_Temporary>
147-
<_Temporary Update="@(_Temporary)">
140+
<Command Condition="'%(_Temporary.Method)' != ''">%(Command) --method %(_Temporary.Method)</Command>
141+
<Command Condition="'%(_Temporary.Service)' != ''">%(Command) --service %(_Temporary.Service)</Command>
148142
<Command Condition="'%(_Temporary.Uri)' != ''">%(Command) --uri %(_Temporary.Uri)</Command>
149-
</_Temporary>
150-
<_Temporary Update="@(_Temporary)">
151-
<Command Condition="'%(_Temporary.Service)' != ''">%(Command) --service %(_Temporary.Service) --method %(_Temporary.Method)</Command>
152-
</_Temporary>
153-
<_Temporary Update="@(_Temporary)">
154-
<Command Condition="'%(_Temporary.Options)' != ''">%(Command) %(_Temporary.Options)</Command>
143+
<DefaultDocumentGeneratorOptions
144+
Condition="'%(_Temporary.DefaultDocumentGeneratorOptions)' == '' AND '$(DefaultDocumentGeneratorDefaultOptions)' != ''">$(DefaultDocumentGeneratorDefaultOptions)</DefaultDocumentGeneratorOptions>
145+
<Command Condition="'%(_Temporary.DefaultDocumentGeneratorOptions)' != ''">%(Command) %(_Temporary.DefaultDocumentGeneratorOptions)</Command>
155146
</_Temporary>
156147
</ItemGroup>
157148

@@ -227,7 +218,13 @@
227218

228219
<Target Name="_ServiceFileReferenceGenerator_Core"
229220
Condition="'@(ServiceFileReference)' != ''"
230-
DependsOnTargets="@(ServiceFileReference -> '%(CodeGenerator)CodeGenerator')" />
221+
Inputs="@(ServiceFileReference)"
222+
Outputs="@(ServiceFileReference -> '%(OutputPath)')">
223+
<MSBuild BuildInParallel="$(BuildInParallel)"
224+
Projects="$(MSBuildProjectFullPath)"
225+
Properties="GeneratorTargetPath=%(OutputPath)"
226+
Targets="%(CodeGenerator)CodeGenerator" />
227+
</Target>
231228

232229
<Target Name="ServiceFileReferenceGenerator" BeforeTargets="BeforeCompile" DependsOnTargets="$(ServiceFileReferenceGeneratorDependsOn)" />
233230
</Project>

0 commit comments

Comments
 (0)