@@ -45,6 +45,7 @@ import org.gradle.api.component.SoftwareComponent
45
45
import org.gradle.api.component.SoftwareComponentFactory
46
46
import org.gradle.api.file.DirectoryProperty
47
47
import org.gradle.api.file.RegularFile
48
+ import org.gradle.api.file.RegularFileProperty
48
49
import org.gradle.api.file.SourceDirectorySet
49
50
import org.gradle.api.provider.Property
50
51
import org.gradle.api.provider.Provider
@@ -848,6 +849,10 @@ abstract class DefaultApolloExtension(
848
849
}
849
850
}
850
851
852
+ private fun Project.regularFileProperty (provider : () -> File ): RegularFileProperty {
853
+ return objects.fileProperty().fileProvider(project.provider(provider))
854
+ }
855
+
851
856
private fun registerDownloadSchemaTasks (service : DefaultService ) {
852
857
val introspection = service.introspection
853
858
var taskProvider: TaskProvider <ApolloDownloadSchemaTask >? = null
@@ -857,7 +862,7 @@ abstract class DefaultApolloExtension(
857
862
taskProvider = project.registerApolloDownloadSchemaTask(
858
863
taskName = ModelNames .downloadApolloSchemaIntrospection(service),
859
864
taskGroup = TASK_GROUP ,
860
- schema = project.provider { service.guessSchemaFile(project, introspection.schemaFile) },
865
+ schema = project.regularFileProperty { service.guessSchemaFile(project, introspection.schemaFile) },
861
866
endpoint = introspection.endpointUrl,
862
867
headers = introspection.headers,
863
868
graph = project.provider { null },
@@ -873,7 +878,7 @@ abstract class DefaultApolloExtension(
873
878
taskProvider = project.registerApolloDownloadSchemaTask(
874
879
taskName = ModelNames .downloadApolloSchemaRegistry(service),
875
880
taskGroup = TASK_GROUP ,
876
- schema = project.provider { service.guessSchemaFile(project, registry.schemaFile) },
881
+ schema = project.regularFileProperty { service.guessSchemaFile(project, registry.schemaFile) },
877
882
endpoint = project.provider { null },
878
883
headers = project.objects.mapProperty(String ::class .java, String ::class .java),
879
884
graph = registry.graph,
@@ -889,9 +894,7 @@ abstract class DefaultApolloExtension(
889
894
connection.execute(
890
895
SchemaConnection (
891
896
taskProvider,
892
- taskProvider.flatMap { downloadSchemaTask ->
893
- project.layout.file(downloadSchemaTask.schema)
894
- }
897
+ taskProvider.flatMap { it.schema }
895
898
)
896
899
)
897
900
}
0 commit comments