plugins {
    id 'java-library'
    alias catalog.plugins.kotlin.jvm
    id 'jacoco'
    id 'maven-publish'
}

dependencies {
    implementation catalog.jwo
    implementation catalog.slf4j.api
    implementation catalog.netty.codec.http
    implementation catalog.netty.handler
    implementation catalog.netty.buffer
    implementation catalog.netty.transport
    implementation catalog.netty.codec.haproxy
    compileOnly catalog.opentelemetry.netty['4']['1']
    compileOnly catalog.opentelemetry.sdk.extension.autoconfigure
    compileOnly catalog.opentelemetry.logback.appender['1']['0']
    compileOnly catalog.opentelemetry.extension.trace.propagators
    compileOnly catalog.logback.classic

    api project(':rbcs-common')
    api project(':rbcs-api')

//    runtimeOnly catalog.slf4j.jdk14
    testRuntimeOnly catalog.logback.classic

    testImplementation catalog.bcprov.jdk18on
    testImplementation catalog.bcpkix.jdk18on

    testRuntimeOnly project(":rbcs-server-memcache")
    testRuntimeOnly project(":rbcs-server-redis")
}

test {
    systemProperty("io.netty.leakDetectionLevel", "PARANOID")
    systemProperty("jdk.httpclient.redirects.retrylimit", "1")
}

publishing {
    publications {
        maven(MavenPublication) {
            from(components["java"])
        }
    }
}



