spring-security-saml2-service-provider.gradle 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. apply plugin: 'io.spring.convention.spring-module'
  2. configurations {
  3. opensaml4Main { extendsFrom(optional, provided) }
  4. opensaml4Test { extendsFrom(opensaml4Main, tests) }
  5. }
  6. sourceSets {
  7. opensaml4Main {
  8. java {
  9. compileClasspath += main.output + configurations.opensaml4Main
  10. srcDir 'src/opensaml4Main/java'
  11. }
  12. }
  13. opensaml4Test {
  14. java {
  15. compileClasspath += main.output + test.output + opensaml4Main.output + configurations.opensaml4Test
  16. srcDir 'src/opensaml4Test/java'
  17. }
  18. }
  19. }
  20. sourceSets.configureEach { set ->
  21. if (!set.name.containsIgnoreCase("main")) {
  22. return
  23. }
  24. def from = copySpec {
  25. from("$projectDir/src/$set.name/java/org/springframework/security/saml2/internal")
  26. }
  27. copy {
  28. into "$projectDir/src/$set.name/java/org/springframework/security/saml2/provider/service/authentication/logout"
  29. filter { line -> line.replaceAll(".saml2.internal", ".saml2.provider.service.authentication.logout") }
  30. with from
  31. }
  32. copy {
  33. into "$projectDir/src/$set.name/java/org/springframework/security/saml2/provider/service/authentication"
  34. filter { line -> line.replaceAll(".saml2.internal", ".saml2.provider.service.authentication") }
  35. with from
  36. }
  37. copy {
  38. into "$projectDir/src/$set.name/java/org/springframework/security/saml2/provider/service/metadata"
  39. filter { line -> line.replaceAll(".saml2.internal", ".saml2.provider.service.metadata") }
  40. with from
  41. }
  42. copy {
  43. into "$projectDir/src/$set.name/java/org/springframework/security/saml2/provider/service/web/authentication/logout"
  44. filter { line -> line.replaceAll(".saml2.internal", ".saml2.provider.service.web.authentication.logout") }
  45. with from
  46. }
  47. copy {
  48. into "$projectDir/src/$set.name/java/org/springframework/security/saml2/provider/service/web/authentication"
  49. filter { line -> line.replaceAll(".saml2.internal", ".saml2.provider.service.web.authentication") }
  50. with from
  51. }
  52. copy {
  53. into "$projectDir/src/$set.name/java/org/springframework/security/saml2/provider/service/web"
  54. filter { line -> line.replaceAll(".saml2.internal", ".saml2.provider.service.web") }
  55. with from
  56. }
  57. copy {
  58. into "$projectDir/src/$set.name/java/org/springframework/security/saml2/provider/service/registration"
  59. filter { line -> line.replaceAll(".saml2.internal", ".saml2.provider.service.registration") }
  60. with from
  61. }
  62. }
  63. dependencies {
  64. management platform(project(":spring-security-dependencies"))
  65. api project(':spring-security-web')
  66. api "org.opensaml:opensaml-core"
  67. api ("org.opensaml:opensaml-saml-api") {
  68. exclude group: 'commons-logging', module: 'commons-logging'
  69. }
  70. api ("org.opensaml:opensaml-saml-impl") {
  71. exclude group: 'commons-logging', module: 'commons-logging'
  72. }
  73. provided 'jakarta.servlet:jakarta.servlet-api'
  74. optional 'com.fasterxml.jackson.core:jackson-databind'
  75. testImplementation 'com.squareup.okhttp3:mockwebserver'
  76. testImplementation "org.assertj:assertj-core"
  77. testImplementation "org.skyscreamer:jsonassert"
  78. testImplementation "org.junit.jupiter:junit-jupiter-api"
  79. testImplementation "org.junit.jupiter:junit-jupiter-params"
  80. testImplementation "org.junit.jupiter:junit-jupiter-engine"
  81. testImplementation "org.mockito:mockito-core"
  82. testImplementation "org.mockito:mockito-junit-jupiter"
  83. testImplementation "org.springframework:spring-test"
  84. }
  85. jar {
  86. duplicatesStrategy = DuplicatesStrategy.EXCLUDE
  87. from sourceSets.opensaml4Main.output
  88. }
  89. sourcesJar {
  90. duplicatesStrategy = DuplicatesStrategy.EXCLUDE
  91. from sourceSets.opensaml4Main.allJava
  92. }
  93. testJar {
  94. duplicatesStrategy = DuplicatesStrategy.EXCLUDE
  95. from sourceSets.opensaml4Test.output
  96. }
  97. javadoc {
  98. classpath += sourceSets.opensaml4Main.runtimeClasspath
  99. source += sourceSets.opensaml4Main.allJava
  100. }
  101. tasks.register("opensaml4Test", Test) {
  102. useJUnitPlatform()
  103. classpath += sourceSets.opensaml4Test.output
  104. }
  105. tasks.named("test") {
  106. dependsOn opensaml4Test
  107. }