/**
 * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE
 * file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file
 * to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the
 * License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations under the License.
 */
dependencyManagement {
  dependencies {
    dependency('ch.qos.logback:logback-classic:1.2.11')
    dependency('commons-codec:commons-codec:1.15')
    dependency('commons-net:commons-net:3.9.0')
    dependency('com.fasterxml.jackson.core:jackson-databind:2.14.1')
    dependency('com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.14.1')
    dependency('com.github.jnr:jnr-ffi:2.2.13')
    dependency('com.github.codemonstur:embedded-redis:0.13.0')
    dependency('com.google.code.findbugs:jsr305:3.0.2')
    dependency('com.google.errorprone:error_prone_annotations:2.17.0')
    dependency('com.google.errorprone:error_prone_core:2.17.0')
    dependency('com.google.guava:guava:31.1-jre')
    dependency('com.h2database:h2:2.1.214')
    dependency('com.jolbox:bonecp:0.8.0.RELEASE')
    dependency('com.netflix.concurrency-limits:concurrency-limits-core:0.3.6')
    dependency('com.nhaarman.mockitokotlin2:mockito-kotlin:2.2.0')
    dependency('com.opentable.components:otj-pg-embedded:1.0.1')
    dependency('com.squareup.okhttp3:okhttp:5.0.0-alpha.11')
    dependency('com.winterbe:expekt:0.5.0')
    dependency('com.zaxxer:HikariCP:5.0.1')
    dependency('info.picocli:picocli:4.7.0')
    dependency('io.grpc:grpc-netty-shaded:1.51.1')
    dependency('net.java.dev.jna:jna:5.12.1')
    dependency('org.hyperledger.besu:bls12-381:0.7.1')
    dependency('org.hyperledger.besu:altbn128:0.7.1')
    dependency('org.hyperledger.besu:secp256k1:0.4.3')
    dependency('org.apache.httpcomponents.client5:httpclient5:5.2.1')

    dependency('org.springframework:spring-context:5.3.24')
    dependency('org.springframework.boot:spring-boot:2.7.7')
    dependency('org.springframework.boot:spring-boot-starter:2.7.7')
    dependency('org.springframework.boot:spring-boot-starter-thymeleaf:2.7.7')
    dependency('org.springframework.boot:spring-boot-starter-web:2.7.7')
    dependency('org.springframework.boot:spring-boot-starter-webflux:2.7.7')
    dependency('org.springframework.boot:spring-boot-starter-tomcat:2.7.7')

    dependency('io.opentelemetry:opentelemetry-api:1.21.0')
    dependency('io.opentelemetry:opentelemetry-api-metrics:1.10.0-alpha-rc.1')
    dependency('io.opentelemetry:opentelemetry-exporter-otlp-metrics:1.14.0')
    dependency('io.opentelemetry:opentelemetry-exporter-otlp:1.21.0')
    dependency('io.opentelemetry:opentelemetry-exporter-prometheus:1.21.0-alpha')
    dependency('io.opentelemetry:opentelemetry-extension-trace-propagators:1.2.0')
    dependency('io.opentelemetry:opentelemetry-proto:1.7.1-alpha')
    dependency('io.opentelemetry:opentelemetry-sdk:1.21.0')
    dependency('io.opentelemetry:opentelemetry-sdk-trace:1.21.0')
    dependency('io.opentelemetry:opentelemetry-sdk-metrics:1.21.0')
    dependency('io.opentelemetry:opentelemetry-sdk-testing:1.21.0')

    dependency('io.opentelemetry:opentelemetry-semconv:1.21.0-alpha')
    dependency('io.prometheus:simpleclient:0.16.0')
    dependency('io.prometheus:simpleclient_httpserver:0.16.0')
    dependency('redis.clients:jedis:4.4.0-m1')
    dependency('io.swagger.core.v3:swagger-jaxrs2-jakarta:2.2.7')
    dependency('org.webjars:swagger-ui:4.15.5')

    dependencySet(group: 'io.vertx', version: '4.3.7') {
      entry 'vertx-core'
      entry 'vertx-lang-kotlin'
      entry 'vertx-lang-kotlin-coroutines'
      entry 'vertx-opentelemetry'
      entry 'vertx-web'
      entry 'vertx-web-client'
    }

    dependency('jakarta.servlet:jakarta.servlet-api:6.0.0')
    dependency('jakarta.annotation:jakarta.annotation-api:2.1.1')
    dependency('javax.persistence:javax.persistence-api:2.2')
    dependencySet(group: 'org.antlr', version: '4.11.1') {
      entry 'antlr4'
      entry 'antlr4-runtime'
    }
    dependency('javax.ws.rs:javax.ws.rs-api:2.1.1')
    dependency('org.apache.lucene:lucene-core:9.4.2')
    dependency('org.apache.openjpa:openjpa:3.2.2')
    dependency('org.assertj:assertj-core:3.23.1')
    dependencySet(group: 'org.bouncycastle', version: '1.70') {
      entry 'bcpkix-jdk15on'
      entry 'bcprov-jdk15on'
    }
    dependencySet(group: 'org.eclipse.jetty', version: '11.0.13') {
      entry 'jetty-server'
      entry 'jetty-servlet'
      entry 'jetty-servlets'
      entry 'jetty-util'
    }
    dependencySet(group: 'org.glassfish.jersey.core', version: '3.1.0') {
      entry 'jersey-server'
      entry 'jersey-client'
    }
    dependency('org.glassfish.jersey.containers:jersey-container-servlet:3.1.0')
    dependency('org.glassfish.jersey.inject:jersey-hk2:3.1.0')
    dependency('org.glassfish.jersey.media:jersey-media-json-jackson:3.0.5')
    dependency('javax.xml.bind:jaxb-api:2.4.0-b180830.0359')
    dependency('org.flywaydb:flyway-core:9.10.2')

    dependency('org.openlabtesting.leveldbjni:leveldbjni-all:1.8')
    dependencySet(group: 'org.junit.jupiter', version: '5.9.1') {
      entry 'junit-jupiter-api'
      entry 'junit-jupiter-engine'
      entry 'junit-jupiter-params'
      entry 'junit-jupiter-migrationsupport'
    }
    dependency('org.infinispan:infinispan-core:14.0.4.Final')
    dependency('org.infinispan:infinispan-cachestore-rocksdb:14.0.4.Final')


    dependency('org.jetbrains:annotations:23.1.0')
    dependencySet(group: 'org.jetbrains.kotlin', version: '1.8.0') {
      entry 'kotlin-reflect'
      entry 'kotlin-stdlib'
      entry 'kotlin-stdlib-jdk8'
    }
    dependencySet(group: 'org.jetbrains.kotlinx', version: '1.6.4') {
      entry 'kotlinx-coroutines-core'
      entry 'kotlinx-coroutines-jdk8'
    }
    dependencySet(group: 'org.jetbrains.spek', version: '1.1.5') {
      entry 'spek-api'
      entry 'spek-junit-platform-engine'
    }
    dependency('org.mapdb:mapdb:3.0.9')
    dependency('org.miracl.milagro.amcl:milagro-crypto-java:0.4.0')
    dependency('org.mockito:mockito-junit-jupiter:4.11.0')
    dependency('org.postgresql:postgresql:42.5.1')

    dependency('org.rocksdb:rocksdbjni:7.8.3')
    dependency('org.slf4j:slf4j-api:1.7.36')
    dependency('org.connid:framework:1.3.2')
    dependency('org.connid:framework-internal:1.3.2')

    dependency('org.webjars:bootstrap:5.2.3')
    dependency('org.webjars:webjars-locator:0.46')

    dependency('org.xerial.snappy:snappy-java:1.1.8.4')
  }
}
