@@ -9,42 +9,27 @@ import kotlinx.validation.api.klib.KLibDumpFilters
9
9
import kotlinx.validation.api.klib.KlibDump
10
10
import kotlinx.validation.api.klib.KlibSignatureVersion
11
11
import kotlinx.validation.api.klib.saveTo
12
- import org.gradle.api.file.FileCollection
12
+ import org.gradle.api.file.ConfigurableFileCollection
13
13
import org.gradle.api.tasks.Input
14
14
import org.gradle.api.tasks.InputFiles
15
- import org.gradle.api.tasks.Optional
16
15
import org.gradle.api.tasks.TaskAction
17
- import java.io.Serializable
18
-
19
- internal class SerializableSignatureVersion (val version : Int ) : Serializable {
20
- constructor (version: KlibSignatureVersion ) : this (version.version)
21
-
22
- fun toKlibSignatureVersion (): KlibSignatureVersion = KlibSignatureVersion (version)
23
- }
24
16
25
17
/* *
26
18
* Generates a text file with a KLib ABI dump for a single klib.
27
19
*/
28
20
internal abstract class KotlinKlibAbiBuildTask : BuildTaskBase () {
29
21
30
22
/* *
31
- * Path to a klib to dump.
32
- */
33
- @InputFiles
34
- lateinit var klibFile: FileCollection
35
-
36
- /* *
37
- * Bind this task with a klib compilation.
23
+ * Collection consisting of a single path to compiled klib (either file, or directory).
38
24
*/
39
- @InputFiles
40
- lateinit var compilationDependencies : FileCollection
25
+ @get: InputFiles
26
+ val klibFile : ConfigurableFileCollection = project.objects.fileCollection()
41
27
42
28
/* *
43
29
* Refer to [KlibValidationSettings.signatureVersion] for details.
44
30
*/
45
- @Optional
46
31
@get:Input
47
- var signatureVersion: SerializableSignatureVersion = SerializableSignatureVersion ( KlibSignatureVersion .LATEST )
32
+ var signatureVersion: KlibSignatureVersion = KlibSignatureVersion .LATEST
48
33
49
34
/* *
50
35
* Name of a target [klibFile] was compiled for.
@@ -62,7 +47,7 @@ internal abstract class KotlinKlibAbiBuildTask : BuildTaskBase() {
62
47
ignoredClasses.addAll(this @KotlinKlibAbiBuildTask.ignoredClasses)
63
48
ignoredPackages.addAll(this @KotlinKlibAbiBuildTask.ignoredPackages)
64
49
nonPublicMarkers.addAll(this @KotlinKlibAbiBuildTask.nonPublicMarkers)
65
- signatureVersion = this @KotlinKlibAbiBuildTask.signatureVersion.toKlibSignatureVersion()
50
+ signatureVersion = this @KotlinKlibAbiBuildTask.signatureVersion
66
51
})
67
52
68
53
dump.saveTo(outputApiFile)
0 commit comments