@@ -13,49 +13,50 @@ import org.gradle.api.tasks.PathSensitive
1313import org.gradle.api.tasks.TaskAction
1414import scoverage.report.CoverageAggregator
1515
16- import static org.gradle.api.tasks.PathSensitivity.RELATIVE
16+ import org.gradle.api.tasks.PathSensitivity.RELATIVE
17+ import java.io.File
1718
1819@CacheableTask
19- class ScoverageReport extends DefaultTask {
20+ abstract class ScoverageReport : DefaultTask () {
2021
2122 @Nested
22- ScoverageRunner runner
23+ var runner: ScoverageRunner ? = null
2324
2425 @InputDirectory
2526 @PathSensitive(RELATIVE )
26- final Property<File > dataDir = project. objects. property(File )
27+ val dataDir : Property <File > = project.objects.property(File :: class .java )
2728
2829 @InputFiles
2930 @PathSensitive(RELATIVE )
30- final Property<FileCollection > sources = project. objects. property(FileCollection )
31+ val sources : Property <FileCollection > = project.objects.property(FileCollection :: class .java )
3132
3233 @OutputDirectory
33- final Property<File > reportDir = project. objects. property(File )
34+ val reportDir : Property <File > = project.objects.property(File :: class .java )
3435
3536 @Input
36- final Property<String > sourceEncoding = project. objects. property(String )
37+ val sourceEncoding : Property <String > = project.objects.property(String :: class .java )
3738
3839 @Input
39- final Property<Boolean > coverageOutputCobertura = project. objects. property(Boolean )
40+ val coverageOutputCobertura : Property <Boolean > = project.objects.property(Boolean :: class .java )
4041 @Input
41- final Property<Boolean > coverageOutputXML = project. objects. property(Boolean )
42+ val coverageOutputXML : Property <Boolean > = project.objects.property(Boolean :: class .java )
4243 @Input
43- final Property<Boolean > coverageOutputHTML = project. objects. property(Boolean )
44+ val coverageOutputHTML : Property <Boolean > = project.objects.property(Boolean :: class .java )
4445 @Input
45- final Property<Boolean > coverageDebug = project. objects. property(Boolean )
46+ val coverageDebug : Property <Boolean > = project.objects.property(Boolean :: class .java )
4647
4748 @TaskAction
48- def report () {
49- runner. run {
49+ fun report () {
50+ runner? .run {
5051 reportDir.get().delete()
5152 reportDir.get().mkdirs()
5253
53- def coverage = CoverageAggregator . aggregate([ dataDir. get()] as File [] )
54+ val coverage = CoverageAggregator .aggregate(arrayOf( dataDir.get()) )
5455
55- if (coverage. isEmpty() ) {
56+ if (coverage.isEmpty) {
5657 project.logger.info(" [scoverage] Could not find coverage file, skipping..." )
5758 } else {
58- new ScoverageWriter (project. logger). write(
59+ ScoverageWriter (project.logger).write(
5960 sources.get().getFiles(),
6061 reportDir.get(),
6162 coverage.get(),
0 commit comments