Advertisement
Guest User

Untitled

a guest
Apr 24th, 2017
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.97 KB | None | 0 0
  1. class PropertiesComparePlugin : Plugin<Project> {
  2. override fun apply(p0: Project?) {
  3. p0?.let { it.extensions.create("path", Holder::class.java) }
  4.  
  5. p0?.let {
  6. p0.tasks.getByName("build").dependsOn(it.task("compareProps").doLast {
  7. val fp = Properties()
  8. val sp = Properties()
  9. val path = p0.extensions.getByType(Holder::class.java)
  10. fp.load(p0.file(path.firstPropFile).run { inputStream() })
  11. sp.load(p0.file(path.secondPropFile).run { inputStream() })
  12. when (compareKeysSet(fp, sp)) {
  13. true -> print("key sets are equals")
  14. false -> throw GradleException("different keys set in properties files")
  15. }
  16. })
  17. }
  18.  
  19. }
  20.  
  21. private fun compareKeysSet(prop1: Properties, prop2: Properties): Boolean
  22. = prop1.keys.containsAll(prop2.keys) && prop1.keys.size == prop2.keys.size
  23. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement