plugins {
	id 'java-platform'
}

javaPlatform {
	allowDependencies()
}

dependencies {
	if (project.hasProperty("isOverrideVersionCatalog")) {
		def springFrameworkVersion = project.property("springFrameworkVersion")
		def reactorVersion = project.property("reactorVersion")
		def springDataVersion = project.property("springDataVersion")
		api platform("org.springframework:spring-framework-bom:$springFrameworkVersion")
		api platform("io.projectreactor:reactor-bom:$reactorVersion")
		api platform("org.springframework.data:spring-data-bom:$springDataVersion")
	} else {
		api platform(libs.org.springframework.spring.framework.bom)
		api platform(libs.io.projectreactor.reactor.bom)
		api platform(libs.org.springframework.data.spring.data.bom)
	}
	api platform(libs.io.rsocket.rsocket.bom)
	api platform(libs.org.junit.junit.bom)
	api platform(libs.org.mockito.mockito.bom)
	api platform(libs.org.jetbrains.kotlin.kotlin.bom)
	api platform(libs.org.jetbrains.kotlinx.kotlinx.coroutines.bom)
	api platform(libs.com.fasterxml.jackson.jackson.bom)
	constraints {
		api libs.ch.qos.logback.logback.classic
		api libs.com.google.inject.guice
		api libs.com.nimbusds.nimbus.jose.jwt
		api libs.com.nimbusds.oauth2.oidc.sdk
		api libs.com.squareup.okhttp3.mockwebserver
		api libs.com.squareup.okhttp3.okhttp
		api libs.com.unboundid.unboundid.ldapsdk
		api libs.commons.collections
		api libs.io.mockk
		api libs.io.micrometer.micrometer.observation
		api libs.jakarta.annotation.jakarta.annotation.api
		api libs.jakarta.inject.jakarta.inject.api
		api libs.jakarta.servlet.jsp.jstl.jakarta.servlet.jsp.jstl.api
		api libs.jakarta.servlet.jsp.jakarta.servlet.jsp.api
		api libs.jakarta.servlet.jakarta.servlet.api
		api libs.jakarta.xml.bind.jakarta.xml.bind.api
		api libs.jakarta.persistence.jakarta.persistence.api
		api libs.jakarta.websocket.jakarta.websocket.api
		api libs.jakarta.websocket.jakarta.websocket.client.api
		api libs.ldapsdk
		api libs.net.sourceforge.htmlunit
		api libs.org.htmlunit.htmlunit
		api libs.org.apache.directory.server.apacheds.entry
		api libs.org.apache.directory.server.apacheds.core
		api libs.org.apache.directory.server.apacheds.protocol.ldap
		api libs.org.apache.directory.server.apacheds.protocol.shared
		api libs.org.apache.directory.server.apacheds.server.jndi
		api libs.org.apache.directory.shared.shared.ldap
		api libs.org.apache.httpcomponents.httpclient
		api libs.org.aspectj.aspectjrt
		api libs.org.aspectj.aspectjweaver
		api libs.org.assertj.assertj.core
		api libs.org.bouncycastle.bcpkix.jdk15on
		api libs.org.bouncycastle.bcprov.jdk15on
		api libs.org.eclipse.jetty.jetty.server
		api libs.org.eclipse.jetty.jetty.servlet
		api libs.org.hamcrest
		api libs.org.hibernate.orm.hibernate.core
		api libs.org.hsqldb
		api libs.org.apereo.cas.client.cas.client.core
		api libs.org.opensaml.opensaml.saml.api
		api libs.org.opensaml.opensaml.saml.impl
		api libs.org.python.jython
		api libs.org.seleniumhq.selenium.htmlunit.driver
		api libs.org.seleniumhq.selenium.selenium.java
		api libs.org.seleniumhq.selenium.selenium.support
		api libs.org.skyscreamer.jsonassert
		api libs.org.slf4j.log4j.over.slf4j
		api libs.org.slf4j.slf4j.api
		api libs.org.springframework.ldap.spring.ldap.core
		api libs.org.synchronoss.cloud.nio.multipart.parser
		api libs.org.apache.maven.resolver.maven.resolver.connector.basic
		api libs.org.apache.maven.resolver.maven.resolver.impl
		api libs.org.apache.maven.resolver.maven.resolver.transport.http
		api libs.org.apache.maven.maven.resolver.provider
		api libs.org.instancio.instancio.junit
	}
}

