Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class PropertiesComparePlugin : Plugin<Project> {
- override fun apply(p0: Project?) {
- p0?.let { it.extensions.create("path", Holder::class.java) }
- p0?.let {
- p0.tasks.getByName("build").dependsOn(it.task("compareProps").doLast {
- val fp = Properties()
- val sp = Properties()
- val path = p0.extensions.getByType(Holder::class.java)
- fp.load(p0.file(path.firstPropFile).run { inputStream() })
- sp.load(p0.file(path.secondPropFile).run { inputStream() })
- when (compareKeysSet(fp, sp)) {
- true -> print("key sets are equals")
- false -> throw GradleException("different keys set in properties files")
- }
- })
- }
- }
- private fun compareKeysSet(prop1: Properties, prop2: Properties): Boolean
- = prop1.keys.containsAll(prop2.keys) && prop1.keys.size == prop2.keys.size
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement