/*
 * 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.
 */
ext {
    depVersions = null
    depLibs = null
}

depVersions = [
    arquillianCubeDocker: "1.18.2",
    arquillianJunit: "1.6.0.Final",
    bcFips: "1.0.2",
    bouncycastle: "1.56",
    commonsCli: "1.4",
    commonsCodec: "1.14",
    commonsCollections4: "4.1",
    commonsCompress: "1.19",
    commonsConfiguration: "1.10",
    commonsIO: "2.4",
    commonsLang2: "2.6",
    commonsLang3: "3.6",
    commonsBeanutils: "1.9.3",
    curator: "5.1.0",
    dockerJava: "3.2.5",
    dropwizard: "3.2.5",
    errorprone: "2.1.2",
    freebuilder: "1.14.9",
    gradleTooling: "4.0.1",
    grpc: "1.33.0",
    groovy: "2.5.8",
    guava: "30.1-jre",
    hamcrest: "1.3",
    hdrhistogram: "2.1.4",
    httpclient: "4.5.13",
    jackson: "2.11.1",
    jcommander: "1.78",
    jctools: "2.1.2",
    jetty: "9.4.31.v20200723",
    jmh: "1.19",
    jmock: "2.8.2",
    jna: "3.2.7",
    jsr305: "3.0.2",
    junit: "4.12",
    junitFoundation: "11.0.0",
    kerby: "1.1.1",
    log4j: "1.2.17",
    lombok: "1.18.20",
    lz4: "1.3.0",
    mockito: "3.0.0",
    netty: "4.1.63.Final",
    nettyTcnativeBoringSsl: "2.0.38.Final",
    powermock: "2.0.2",
    prometheus: "0.0.21",
    protobuf: "3.14.0",
    reflections: "0.9.11",
    rocksDb: "6.13.3",
    slf4j: "1.7.25",
    snakeyaml: "1.19",
    spotbugsAnnotations: "3.1.8",
    protocGenGrpcJava: "1.12.0",
    shrinkwrap:"3.1.4",
    snappy: "1.1.7.7",
    thrift: "0.12.0",
    testcontainers: "1.15.1",
    vertx: "3.9.2",
    yahooDatasketches: "0.8.3",
    zookeeper: "3.6.2",
]

depLibs = [
    bcpkixJdk15on: "org.bouncycastle:bcpkix-jdk15on:${depVersions.bouncycastle}",
    bcproveExtJdk15on: "org.bouncycastle:bcprov-ext-jdk15on:${depVersions.bouncycastle}",
    bcFips: "org.bouncycastle:bc-fips:${depVersions.bcFips}",
    commonsCli: "commons-cli:commons-cli:${depVersions.commonsCli}",
    arquillianCubeDocker: "org.arquillian.cube:arquillian-cube-docker:${depVersions.arquillianCubeDocker}",
    arquillianJunitContainer: "org.jboss.arquillian.junit:arquillian-junit-container:${depVersions.arquillianJunit}",
    arquillianJunitStandalone: "org.jboss.arquillian.junit:arquillian-junit-standalone:${depVersions.arquillianJunit}",
    commonsCodec: "commons-codec:commons-codec:${depVersions.commonsCodec}",
    commonsCollections4: "org.apache.commons:commons-collections4:${depVersions.commonsCollections4}",
    commonsCompress: "org.apache.commons:commons-compress:${depVersions.commonsCompress}",
    commonsConfiguration: "commons-configuration:commons-configuration:${depVersions.commonsConfiguration}",
    commonsIO: "commons-io:commons-io:${depVersions.commonsIO}",
    commonsLang2: "commons-lang:commons-lang:${depVersions.commonsLang2}",
    commonsLang3: "org.apache.commons:commons-lang3:${depVersions.commonsLang3}",
    commonsBeanutils: "commons-beanutils:commons-beanutils:${depVersions.commonsBeanutils}",
    curatorFramework: "org.apache.curator:curator-framework:${depVersions.curator}",
    curatorRecipes: "org.apache.curator:curator-recipes:${depVersions.curator}",
    dockerJava: "com.github.docker-java:docker-java:${depVersions.dockerJava}",
    errorprone: "com.google.errorprone:error_prone_annotations:${depVersions.errorprone}",
    freebuilder: "org.inferred:freebuilder:${depVersions.freebuilder}",
    gradleTooling: "org.gradle:gradle-tooling-api:${depVersions.gradleTooling}",
    grpc: "io.grpc:grpc-all:${depVersions.grpc}",
    groovy: "org.codehaus.groovy:groovy-all:${depVersions.groovy}",
    guava: "com.google.guava:guava:${depVersions.guava}",
    hdrHistogram: "org.hdrhistogram:HdrHistogram:${depVersions.hdrhistogram}",
    hamcrest: "org.hamcrest:hamcrest-all:${depVersions.hamcrest}",
    httpclient: "org.apache.httpcomponents:httpclient:${depVersions.httpclient}",
    jacksonAnnotations: "com.fasterxml.jackson.core:jackson-annotations:${depVersions.jackson}",
    jacksonCore: "com.fasterxml.jackson.core:jackson-core:${depVersions.jackson}",
    jacksonDatabind: "com.fasterxml.jackson.core:jackson-databind:${depVersions.jackson}",
    jcommander: "com.beust:jcommander:${depVersions.jcommander}",
    jctools: "org.jctools:jctools-core:${depVersions.jctools}",
    jettyServlet: "org.eclipse.jetty:jetty-servlet:${depVersions.jetty}",
    jmock: "org.jmock:jmock:${depVersions.jmock}",
    jmhCore: "org.openjdk.jmh:jmh-core:${depVersions.jmh}",
    jmhGeneratorAnnprocess: "org.openjdk.jmh:jmh-generator-annprocess:${depVersions.jmh}",
    jna: "net.java.dev.jna:jna:${depVersions.jna}",
    jsr305: "com.google.code.findbugs:jsr305:${depVersions.jsr305}",
    junit: "junit:junit:${depVersions.junit}",
    junitFoundation: "com.nordstrom.tools:junit-foundation:${depVersions.junitFoundation}",
    kerbySimpleKdc: "org.apache.kerby:kerb-simplekdc:${depVersions.kerby}",
    log4j: "log4j:log4j:${depVersions.log4j}",
    lombok: "org.projectlombok:lombok:${depVersions.lombok}",
    lz4: "net.jpountz.lz4:lz4:${depVersions.lz4}",
    metricsCore: "io.dropwizard.metrics:metrics-core:${depVersions.dropwizard}",
    metricsJvm: "io.dropwizard.metrics:metrics-jvm:${depVersions.dropwizard}",
    metricsGraphite: "io.dropwizard.metrics:metrics-graphite:${depVersions.dropwizard}",
    mockito: "org.mockito:mockito-core:${depVersions.mockito}",
    nettyBuffer: "io.netty:netty-buffer:${depVersions.netty}",
    nettyCommon: "io.netty:netty-common:${depVersions.netty}",
    nettyHandler: "io.netty:netty-handler:${depVersions.netty}",
    nettyTcnativeBoringSsl: "io.netty:netty-tcnative-boringssl-static:${depVersions.nettyTcnativeBoringSsl}",
    nettyTransport: "io.netty:netty-transport:${depVersions.netty}",
    nettyTransportNativeEpoll: "io.netty:netty-transport-native-epoll:${depVersions.netty}",
    powermockJunit: "org.powermock:powermock-module-junit4:${depVersions.powermock}",
    powermockMockito: "org.powermock:powermock-api-mockito2:${depVersions.powermock}",
    prometheusSimpleClient: "io.prometheus:simpleclient:${depVersions.prometheus}",
    prometheusSimpleClientHotspot: "io.prometheus:simpleclient_hotspot:${depVersions.prometheus}",
    prometheusSimpleClientServlet: "io.prometheus:simpleclient_servlet:${depVersions.prometheus}",
    protobuf: "com.google.protobuf:protobuf-java:${depVersions.protobuf}",
    protocGenGrpcJava: "io.grpc:protoc-gen-grpc-java:${depVersions.protocGenGrpcJava}",
    protoc: "com.google.protobuf:protoc:${depVersions.protobuf}",
    reflections: "org.reflections:reflections:${depVersions.reflections}",
    rocksDb: "org.rocksdb:rocksdbjni:${depVersions.rocksDb}",
    slf4j: "org.slf4j:slf4j-api:${depVersions.slf4j}",
    slf4jSimple: "org.slf4j:slf4j-simple:${depVersions.slf4j}",
    slf4jLog4j: "org.slf4j:slf4j-log4j12:${depVersions.slf4j}",
    shrinkwrapImpl: "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-impl-maven:${depVersions.shrinkwrap}",
    shrinkwrapApi: "org.jboss.shrinkwrap.resolver:shrinkwrap-resolver-api:${depVersions.shrinkwrap}",
    snappy: "org.xerial.snappy:snappy-java:${depVersions.snappy}",
    snakeyaml: "org.yaml:snakeyaml:${depVersions.snakeyaml}",
    spotbugsAnnotations: "com.github.spotbugs:spotbugs-annotations:${depVersions.spotbugsAnnotations}",
    thrift: "org.apache.thrift:libthrift:${depVersions.thrift}",
    testcontainers: "org.testcontainers:testcontainers:${depVersions.testcontainers}",
    vertxCore: "io.vertx:vertx-core:${depVersions.vertx}",
    vertxWeb: "io.vertx:vertx-web:${depVersions.vertx}",
    yahooDatasketches: "com.yahoo.datasketches:sketches-core:${depVersions.yahooDatasketches}",
    zookeeper: "org.apache.zookeeper:zookeeper:${depVersions.zookeeper}",
    zookeeperTest: "org.apache.zookeeper:zookeeper:${depVersions.zookeeper}:tests"
]
