dependencyManagement {
  versions {
    // please keep the list sorted
    activeMqArtemis: "2.9.0"
    aetherVersion: "1.1.0"
    akkaHttpVersion: "10.1.5"
    akkaMajorVersion: "2.5"
    akkaVersion: "2.5.23"
    apacheDsVersion: "1.5.5" // Spring security doesn't work with 1.5.6 or 1.5.7
    aspectjVersion: "1.9.4"
    bouncyCastleVersion: "1.66"
    caffeineVersion: "2.7.0"
    camelVersion: "3.4.0"
    commonsBeanutilsVersion: "1.9.4" //Added explicitly to fix vulnerable component. Can be removed once activeMqArtemis is upgraded to latest
    commonsConfigurationVersion: "2.7" //Added explicitly to fix vulnerable component. Can be removed once activeMqArtemis is upgraded to latest
    crashVersion: "1.3.2"
    crowdIntegrationVersion: "3.4.3"
    derbyVersion: "10.14.2.0"
    docBaseStyleVersion: "2.0.11"
    dropwizardMetricsVersion="4.0.0+xebialabs.201709281600"
    groovyVersion: "2.5.7"
    hibernateVersion: "5.4.15.Final"
    httpClientVersion: "4.5.10"
    httpCoreVersion: "4.4.11"
    infinispanVersion: "9.4.15.Final"
    jackrabbitVersion: "2.14.0"
    jacksonVersion: "2.10.4"
    jcloudsVersion: "2.1.2"
    jettyVersion: "9.4.19.v20190610"
    jgroupsVersion: "4.2.4.Final" //Added explicitly to fix vulnerable component. Can be removed once activeMqArtemis is upgraded to latest
    jythonVersion: "2.7.1"
    jpaVersion: "2.2"
    jsonpath: "2.4.0"
    kamonVersion="0.6.7"
    liquibaseVersion: "3.6.3" // before upgrading check DEPL-15664 for regressions on liquibase 3.7.0 and Oracle12
    logbackVersion: "1.2.3"
    minaVersion: "2.0.21" // 2.0.x is required by ApacheDS 1.5.x
    mockitoVersion: "2.25.1"
    nettyVersion: "4.1.50.Final" //Added explicitly to fix vulnerable component. Can be removed once activeMqArtemis is upgraded to latest
    nebulaReleasePluginVersion: "13.0.0"
    overthereVersion: "5.0.8"
    restassuredVersion: "4.0.0"
    resteasyVersion: "3.12.1.Final"
    scalaFullVersion: "2.12.8"
    scalaTestVersion: "3.0.8"
    scalaVersion: "2.12"
    scannitVersion: "1.4.1"
    seleniumVersion: "2.53.1"
    slickVersion: "3.3.2"
    slf4jVersion: "1.7.26"
    sprayJsonVersion: "1.3.5"
    springDataJpaVersion: "2.1.18.RELEASE"
    springLdapVersion: "2.3.3.RELEASE"
    springSecurityVersion: "5.3.0.RELEASE"
    springVersion: "5.2.7.RELEASE"
    springSessionVersion: "2.1.12.RELEASE"
    sshdVersion: "2.3.0"
    telnetdVersion: "2.1.1"
    testcontainersScalaVersion: "0.29.0"
    trueZipVersion: "7.7.10"
  }
  dependencies: [
    "args4j:args4j:2.33"
    "cglib:cglib:3.2.12"
    {
      group: "ch.qos.logback"
      version: "$logbackVersion"
      artifacts: [
        "logback-access"
        "logback-classic"
        "logback-core"
      ]}
    "com.atlassian.crowd:crowd-integration-springsecurity:$crowdIntegrationVersion"
    "com.amazonaws:aws-java-sdk-marketplacemeteringservice:1.11.596"
    "com.enragedginger:akka-quartz-scheduler_${scalaVersion}:1.8.1-akka-${akkaMajorVersion}.x"
    "com.esotericsoftware:kryo:4.0.2"
    {
      group: "com.fasterxml.jackson.core"
      version: "$jacksonVersion"
      artifacts: [
        "jackson-annotations"
        "jackson-core"
        "jackson-databind"
      ]}
    {
      group: "com.fasterxml.jackson.datatype"
      version: "$jacksonVersion"
      artifacts: [
        "jackson-datatype-joda"
      ]}
    {
      group: "com.fasterxml.jackson.dataformat"
      version: "$jacksonVersion"
      artifacts: [
        "jackson-dataformat-yaml"
      ]}
    {
      group: "com.fasterxml.jackson.jaxrs"
      version: "$jacksonVersion"
      artifacts: [
        "jackson-jaxrs-base"
        "jackson-jaxrs-json-provider"
      ]}
    "com.fasterxml.jackson.module:jackson-module-scala_${scalaVersion}:${jacksonVersion}"
    "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:${jacksonVersion}"
    "com.github.fommil:spray-json-shapeless_${scalaVersion}:1.4.0"
    "com.github.maiflai:gradle-scalatest:0.25"
    "com.github.nscala-time:nscala-time_${scalaVersion}:2.22.0"
    "com.github.romix.akka:akka-kryo-serialization_${scalaVersion}:0.5.2"
    "com.github.scopt:scopt_${scalaVersion}:3.7.1"
    "com.github.tomakehurst:wiremock-jre8:2.24.0"
    "com.github.zafarkhaja:java-semver:0.9.0"
    {
      group: "com.google.code.findbugs"
      version: "3.0.1"
      artifacts: [
        "annotations"
        "jsr305"
      ]}

    "com.github.ben-manes.caffeine:caffeine:${caffeineVersion}"
    "com.google.guava:guava:28.0-jre"
    "com.googlecode.owasp-java-html-sanitizer:owasp-java-html-sanitizer:20190610.1"
    "com.h2database:h2:1.4.200"
    "com.hierynomus:asn-one:0.4.0"
    "io.rest-assured:rest-assured:$restassuredVersion"
    "com.lihaoyi:requests_${scalaVersion}:0.2.0"
    "com.oracle:ojdbc6:11.2.0.3"
    "com.ibm:db2jcc4:4.19.26"
    "com.microsoft.sqlserver:mssql-jdbc:7.2.2.jre8"
    "com.ryantenney.metrics:metrics-spring:3.1.3"
    "com.samskivert:jmustache:1.15"
    "com.sun.activation:jakarta.activation:1.2.2"
    "com.sun.mail:jakarta.mail:1.6.5"
    "com.thoughtworks.xstream:xstream:1.4.11.1"
    "com.twitter:chill_${scalaVersion}:0.9.3"
    {
      group: "com.typesafe.akka"
      version: "$akkaVersion"
      artifacts: [
        "akka-actor_${scalaVersion}"
        "akka-cluster-sharding_${scalaVersion}"
        "akka-cluster_${scalaVersion}"
        "akka-distributed-data_${scalaVersion}"
        "akka-remote_${scalaVersion}"
        "akka-slf4j_${scalaVersion}"
        "akka-stream_${scalaVersion}"
        "akka-stream-testkit_${scalaVersion}"
        "akka-testkit_${scalaVersion}"
      ]}
    {
        group: "com.typesafe.akka"
        version: "$akkaHttpVersion"
        artifacts: [
            "akka-http_${scalaVersion}"
            "akka-http-core_${scalaVersion}"
            "akka-http-spray-json_${scalaVersion}"
            "akka-http-testkit_${scalaVersion}"
            "akka-http-xml_${scalaVersion}"
        ]}
    "com.typesafe:config:1.3.4"
    "com.vmware:vijava:5.1"
    "com.xebialabs.cloud:overcast:$overcastVersion"
    "com.xebialabs.deployit.documentation:base-documentation-style:$docBaseStyleVersion@zip"
    {
      group: "com.xebialabs.deployit.engine"
      version: "$xlDeployVersion"
      artifacts: [
        "packager"
        "planner"
        "tasker"
        "test-engine"
      ]}
    {
      group: "com.xebialabs.deployit.engine"
      version: "$xlPlatformVersion"
      artifacts: [
        "engine-xml"
        "engine-xml-tests"
        "json-patch"
        "local-booter"
        "packager"
        "remote-booter"
        "replacer"
        "staged-files"
        "test-tools"
      ]}
    "com.xebialabs.deployit.gradle:license-data:$licenseDatabaseVersion"
    "com.xebialabs.deployit.license:xl-license-generator:$xlPlatformVersion"
    "com.xebialabs.deployit.ascode:xl-devops-as-code-common:$xlPlatformVersion"
    {
      group: "com.xebialabs.deployit.plugins"
      version: "$xlDeployVersion"
      artifacts: [
        "base-plugin"
        "command-plugin"
        "database-plugin"
        "deployment-checklist-plugin"
        "file-plugin"
        "generic-plugin"
        "group-orchestrator-plugin"
        "jee-plugin"
        "powershell-plugin"
        "python-plugin"
        "remoting-plugin"
        "trigger-plugin"
        "webserver-plugin"
      ]}
    "com.xebialabs.deployit.plugins:xld-tasker-extension:$xlPlatformVersion"
    {
      group: "com.xebialabs.deployit.plugins"
      version: "$xldProvisionVersion"
      artifacts: [
        "xld-provision"
        "xld-provision-cli"
      ]}
    {
      group: "com.xebialabs.deployit"
      version: "$xlPlatformVersion"
      artifacts: [
        "appserver-api"
        "appserver-api-impl"
        "appserver-core"
        "appserver-main"
        "appserver-migrations-jcr"
        "engine-api"
        "engine-spi"
        "engine-spi-jcr"
        "server-extension"
        "udm-plugin-api"
      ]}
    "com.xebialabs.overthere:overthere:$overthereVersion"
    "com.xebialabs.restito:restito:0.9.3"
    {
      group: "com.xebialabs.xl-platform"
      version: "$xlPlatformVersion"
      artifacts: [
        "appserver-migrations-sql"
        "export-cis"
        "maven-resolver"
        "repository-utils"
        "satellite-protocol"
        "satellite-system"
        "task-system"
        "scala-base"
        "test-services-utils"
        "test-utils"
        "tasker-akka"
        "xl-base"
        "xl-core"
        "xl-endpoints-api"
        "xl-endpoints-routes"
        "xl-chain-of-custody"
        "xl-cluster"
        "xl-license"
        "xl-license-api"
        "xl-license-web"
        "xl-plugin"
        "xl-plugin-manager"
        "xl-repository-api"
        "xl-repository-jackrabbit"
        "xl-repository-jcr"
        "xl-repository-crash"
        "xl-repository-tck"
        "xl-repository-sql"
        "xl-repository-test"
        "xl-scheduler"
        "xl-script-engine"
        "xl-auth-oidc"
        "xl-security"
        "xl-security-api"
        "xl-security-jackrabbit"
        "xl-security-jcr"
	      "xl-security-sql"
        "xl-security-tests"
        "xl-test-repository"
        "xl-ui-components-api"
        "xl-ui-components-rest"
        "xl-utils"
        "xl-jmx"
        "xl-webhooks-common"
        "xl-webhooks-endpoint"
        "xl-webhooks-queue"
      ]}
    "com.zaxxer:HikariCP:3.3.1"
    "commons-codec:commons-codec:1.12"
    "commons-collections:commons-collections4:4.4"
    "commons-io:commons-io:2.6"
    "commons-lang:commons-lang:2.6"
    "de.javakaffee:kryo-serializers:0.45"
    {
      group: "de.schlichtherle.truezip"
      version: "$trueZipVersion"
      artifacts: [
        "truezip-driver-file"
        "truezip-driver-tar"
        "truezip-driver-zip"
        "truezip-file"
        "truezip-kernel"
      ]}
    "org.dom4j:dom4j:2.1.3"
    "httpunit:httpunit:1.7.3"
    {
      group: "io.dropwizard.metrics"
      version: "$dropwizardMetricsVersion"
      artifacts: [
        "metrics-annotation"
        "metrics-core"
        "metrics-healthchecks"
        "metrics-jetty9"
        "metrics-jmx"
        "metrics-json"
        "metrics-jvm"
      ]}
    {
      group="io.kamon"
      version="$kamonVersion"
      artifacts=[
        "kamon-core_${scalaVersion}",
        "kamon-jmx_${scalaVersion}",
        "kamon-system-metrics_${scalaVersion}",
        "kamon-akka-${akkaMajorVersion}_${scalaVersion}",
        "kamon-scala_${scalaVersion}",
        "kamon-jdbc_${scalaVersion}"
      ]}
    "io.spray:spray-json_${scalaVersion}:$sprayJsonVersion"
    "jakarta.validation:jakarta.validation-api:2.0.2"
    "javax.inject:javax.inject:1"
    "javax.jcr:jcr:2.0"
    "javax.jms:javax.jms-api:2.0",
    "javax.json:javax.json-api:1.1.4"
    "javax.servlet:javax.servlet-api:4.0.1"
    "javax.transaction:jta:1.1"
    "javax.persistence:javax.persistence-api:$jpaVersion"
    "jaxen:jaxen:1.2.0"
    "jline:jline:2.14.6"
    "joda-time:joda-time:2.10.3"
    "junit:junit:4.12"
    "mysql:mysql-connector-java:8.0.17"
    "org.postgresql:postgresql:42.2.6"
    "nl.javadude.assumeng:assumeng:1.2.4"
    "nl.javadude.scannit:scannit:$scannitVersion"
    "nl.javadude.t2bus:t2-bus:1.2.1"
    "commons-beanutils:commons-beanutils:$commonsBeanutilsVersion"
    "org.apache.commons:commons-configuration2:$commonsConfigurationVersion"
    "org.jgroups:jgroups:$jgroupsVersion"
    {
      group="io.netty"
      version="$nettyVersion"
      artifacts=[
        "netty-transport-native-epoll",
        "netty-transport-native-kqueue",
        "netty-codec-http",
        "netty-transport",
        "netty-buffer",
        "netty-handler",
        "netty-codec",
        "netty-common"
      ]
    }
    {
      group="org.apache.activemq"
      version="$activeMqArtemis"
      artifacts=[
        "artemis-server",
        "artemis-jms-server",
        "artemis-jms-client-all",
        "artemis-spring-integration",
        "artemis-junit"
      ]
    }
    "org.apache.camel:camel-core:$camelVersion"
    "org.apache.camel:camel-spring:$camelVersion"
    "org.apache.camel:camel-spring-javaconfig:$camelVersion"
    "io.tmos:arm4s_${scalaVersion}:1.1.0"
    "net.bytebuddy:byte-buddy:1.10.8"
    "net.bytebuddy:byte-buddy-agent:1.10.8"
    "io.github.classgraph:classgraph:4.8.65"
    "com.github.pureconfig:pureconfig_${scalaVersion}:0.12.3"
    "org.apache.activemq:activemq-broker:5.15.11"
    "org.apache.commons:commons-csv:1.7"
    "org.apache.commons:commons-compress:1.19"
    "org.apache.commons:commons-lang3:3.9"
    "org.apache.commons:commons-math3:3.6.1"
    {
      group: "org.apache.derby"
      version: "$derbyVersion"
      artifacts: [
        "derby"
        "derbyclient"
        "derbynet"
      ]
    }
    {
      group: "org.apache.directory.server"
      version: "$apacheDsVersion"
      artifacts: [
        "apacheds-core-integ"
        "apacheds-server-integ"
        "apacheds-all"
      ]}
    "org.apache.geronimo.specs:geronimo-j2ee-management_1.1_spec:1.0.1"
    {
      group: "org.apache.geronimo.specs"
      version: "1.1.1"
      artifacts: [
        "geronimo-jms_1.1_spec"
        "geronimo-jta_1.1_spec"
      ]}
    {
      group: "org.apache.httpcomponents"
      version: "$httpClientVersion"
      artifacts: [
        "httpclient"
        "httpmime"
      ]}
    "org.apache.httpcomponents:httpcore:$httpCoreVersion"
    {
      group: "org.apache.jackrabbit"
      version: "$jackrabbitVersion"
      artifacts: [
        "jackrabbit-api"
        "jackrabbit-core"
        "jackrabbit-jcr-commons"
        "jackrabbit-jcr-server"
        "jackrabbit-spi"
        "jackrabbit-spi-commons"
        "jackrabbit-webdav"
      ]}
    "org.apache.jackrabbit:jackrabbit-webapp:$jackrabbitVersion}@ja"
    "org.apache.james:apache-mime4j:0.6" // Resteasy depends on this version, changes in 0.7 are severe
    "org.apache.jclouds.api:ec2:$jcloudsVersion"
    "org.apache.jclouds.provider:aws-ec2:$jcloudsVersion"
    {
      group: "org.apache.jclouds"
      version: "$jcloudsVersion"
      artifacts: [
        "jclouds-compute"
        "jclouds-core"
      ]}
    "org.apache.maven:maven-aether-provider:3.3.9"
    "org.apache.mina:mina-core:$minaVersion"
    "org.apache.qpid:qpid-jms-client:0.52.0"

    "org.apache.sshd:sshd-core:$sshdVersion"
    "org.apache.velocity:velocity:1.7"
    {
      group: "org.aspectj"
      version: "$aspectjVersion"
      artifacts: [
        "aspectjrt"
        "aspectjweaver"
      ]}
    {
      group: "org.bouncycastle"
      version: "$bouncyCastleVersion"
      artifacts: [
        "bcpkix-jdk15on"
        "bcprov-jdk15on"
      ]}
    "org.clapper:grizzled-slf4j_${scalaVersion}:1.3.4"
    "org.codehaus.groovy:groovy-all:${groovyVersion}"
    "org.codehaus.jettison:jettison:1.4.0"
    "org.easymock:easymock:4.0.2"
    "org.easytesting:fest-reflect:1.4.1"
    "org.easytesting:fest-assert-core:2.0M10"
    {
      group: "org.eclipse.aether"
      version: "$aetherVersion"
      artifacts: [
        "aether"
        "aether-api"
        "aether-connector-basic"
        "aether-impl"
        "aether-spi"
        "aether-transport-file"
        "aether-transport-http"
      ]}
    {
      group: "org.eclipse.jetty"
      version: "$jettyVersion"
      artifacts: [
        "jetty-client"
        "jetty-jmx"
        "jetty-jndi"
        "jetty-security"
        "jetty-server"
        "jetty-servlet"
        "jetty-servlets"
        "jetty-util"
        "jetty-webapp"
      ]}
    {
      group: "org.eclipse.jetty.websocket"
      version: "$jettyVersion"
      artifacts: [
        "websocket-client"
        "websocket-api"
        "websocket-server"
      ]}
    "org.freemarker:freemarker:2.3.28"
    "org.fusesource.hawtbuf:hawtbuf:1.11"
    "org.glassfish:javax.json:1.1.4"
    {
      group: "org.hamcrest"
      version: "1.3"
      artifacts: [
        "hamcrest-core"
        "hamcrest-library"
      ]}
    {
      group: "org.infinispan"
      version: "$infinispanVersion"
      artifacts: [
        "infinispan-cachestore-jdbc"
        "infinispan-commons"
        "infinispan-core"
      ]}
    "org.javassist:javassist:3.25.0-GA"
    {
      group: "org.jboss.resteasy"
      version: "$resteasyVersion"
      artifacts: [
        "resteasy-client"
        "resteasy-jackson2-provider"
        "resteasy-jaxb-provider"
        "resteasy-jaxrs"
        "resteasy-jettison-provider"
        "resteasy-multipart-provider"
        "resteasy-netty"
        "resteasy-spring"
      ]}
    "org.jdom:jdom:2.0.2"
    "org.joda:joda-convert:2.2.1"
    "org.liquibase:liquibase-core:${liquibaseVersion}"
    "com.mattbertolini:liquibase-slf4j:2.0.0"
    "org.mockito:mockito-core:${mockitoVersion}"
    "org.owasp.antisamy:antisamy:1.5.8"
    "org.pegdown:pegdown:1.6.0"
    "org.python:jython:$jythonVersion"
    "org.python:jython-standalone:${jythonVersion}.patch2618"
    "org.scala-lang.modules:scala-java8-compat_${scalaVersion}:0.9.0"
    "org.scala-lang.modules:scala-xml_${scalaVersion}:1.2.0"
    {
      group: "org.scala-lang"
      version: "$scalaFullVersion"
      artifacts: [
        "scala-library"
        "scala-reflect"
      ]}
    "org.scalacheck:scalacheck_${scalaVersion}:1.14.0"
    "org.scalatest:scalatest_${scalaVersion}:$scalaTestVersion"
    "org.scalatestplus:scalatestplus-mockito_${scalaVersion}:1.0.0-M2"
    "org.seleniumhq.selenium:selenium-java:$seleniumVersion"
    {
      group: "org.slf4j"
      version: "$slf4jVersion"
      artifacts: [
        "jcl-over-slf4j"
        "jul-to-slf4j"
        "log4j-over-slf4j"
        "slf4j-api"
      ]}
    "org.springframework.ldap:spring-ldap-core:$springLdapVersion"
    {
      group: "org.springframework.security"
      version: "$springSecurityVersion"
      artifacts: [
        "spring-security-config"
        "spring-security-core"
        "spring-security-ldap"
        "spring-security-web"
      ]}
    "org.springframework.security:spring-security-jwt:1.0.10.RELEASE"
    "org.springframework.security.oauth:spring-security-oauth2:2.5.0.RELEASE"
    {
      group: "org.springframework"
      version: "$springVersion"
      artifacts: [
        "spring-beans"
        "spring-context"
        "spring-core"
        "spring-jdbc"
        "spring-jms"
        "spring-test"
        "spring-messaging"
        "spring-web"
        "spring-webmvc"
        "spring-websocket"
        "spring-orm"
      ]}
    {
      group: "org.springframework.session"
      version: "$springSessionVersion"
      artifacts: [
        "spring-session-core"
        "spring-session-jdbc"
      ]}
    "org.springframework.data:spring-data-jpa:$springDataJpaVersion"
    "org.hibernate:hibernate-core:$hibernateVersion"
    "org.testng:testng:6.14.3"
    "org.yaml:snakeyaml:1.26"
    "pl.pragmatists:JUnitParams:1.1.1"
    {
      group: "org.crashub"
      version: "$crashVersion"
      artifacts: [
        "crash.shell"
        "crash.cli"
        "crash.connectors.ssh"
        "crash.connectors.telnet"
        "crash.embed.spring"
      ]
    }
    "net.wimpi:telnetd-x:$telnetdVersion"
    "com.typesafe.slick:slick_${scalaVersion}:$slickVersion"
    "com.dimafeng:testcontainers-scala_$scalaVersion:$testcontainersScalaVersion"
    "javax.xml.bind:jaxb-api:2.3.1"
    "com.jayway.jsonpath:json-path:${jsonpath}"
  ]

  blacklist: [
    "com.esotericsoftware:kryo-shaded"
    "com.google.collections:google-collections"
    "commons-logging:commons-logging"
    "javassist:javassist"
    "javax.servlet:servlet-api"
    "javax.xml.bind:jsr173_api"
    "javax.xml.stream:stax-api"
    "log4j:log4j"
    "net.java.dev.msv:xsdlib"
    "org.bouncycastle:bcprov-jdk15"
    "org.bouncycastle:bcprov-jdk16"
    "org.fusesource.hawtjni:hawtjni-runtime"
    "org.fusesource.leveldbjni:leveldbjni"
    "org.fusesource.leveldbjni:leveldbjni-all"
    "org.fusesource.leveldbjni:leveldbjni-linux32"
    "org.fusesource.leveldbjni:leveldbjni-linux64"
    "org.fusesource.leveldbjni:leveldbjni-osx"
    "org.fusesource.leveldbjni:leveldbjni-win32"
    "org.fusesource.leveldbjni:leveldbjni-win64"
    "org.apache.geronimo.specs:geronimo-jms_2.0_spec"
    "org.iq80.leveldb:leveldb"
    "org.iq80.leveldb:leveldb-api"
    "org.jboss.resteasy:resteasy-jackson-provider"
    "org.jboss.spec.javax.xml.bind:jboss-jaxb-api_2.3_spec"
    "org.mortbay.jetty:servlet-api-2.5"
    "org.slf4j:slf4j-log4j12"
    "org.slf4j:slf4j-simple"
    "stax:stax-api"
    "pull-parser:pull-parser"
    "xpp3:xpp3"
  ]

  rewrites {
    "jdom:jdom": "org.jdom:jdom"
    "c3p0:c3p0": "com.mchange:c3p0"
    "com.sun.mail:javax.mail": "com.sun.mail:jakarta.mail"
    "javax.activation:javax.activation-api": "com.sun.activation:jakarta.activation"
    "javax.mail:mail": "com.sun.mail:jakarta.mail"
    "javax.validation:validation-api": "jakarta.validation:jakarta.validation-api"
  }
}
