2018-03-06 17:29:21 +00:00
|
|
|
/*
|
|
|
|
* R3 Proprietary and Confidential
|
|
|
|
*
|
|
|
|
* Copyright (c) 2018 R3 Limited. All rights reserved.
|
|
|
|
*
|
|
|
|
* The intellectual and technical concepts contained herein are proprietary to R3 and its suppliers and are protected by trade secret law.
|
|
|
|
*
|
|
|
|
* Distribution of this file or any portion thereof via any medium without the express permission of R3 is strictly prohibited.
|
|
|
|
*/
|
2018-04-16 17:08:44 +01:00
|
|
|
plugins {
|
2018-05-03 14:27:51 +01:00
|
|
|
id "com.github.johnrengelman.shadow" version "2.0.4"
|
2018-04-16 17:08:44 +01:00
|
|
|
}
|
2017-03-17 10:33:01 +00:00
|
|
|
apply plugin: 'kotlin'
|
|
|
|
apply plugin: 'net.corda.plugins.quasar-utils'
|
|
|
|
apply plugin: 'net.corda.plugins.publish-utils'
|
2017-06-26 18:07:56 +01:00
|
|
|
apply plugin: 'com.jfrog.artifactory'
|
2017-03-17 10:33:01 +00:00
|
|
|
|
2017-11-28 18:12:48 +00:00
|
|
|
description 'Corda node API'
|
2017-03-17 10:33:01 +00:00
|
|
|
|
|
|
|
dependencies {
|
|
|
|
compile project(":core")
|
2018-05-17 16:18:07 +01:00
|
|
|
compile project(":serialization") // TODO Remove this once the NetworkBootstrapper class is moved into the tools:bootstrapper module
|
2017-03-17 10:33:01 +00:00
|
|
|
|
2018-04-24 14:03:41 +01:00
|
|
|
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
|
2017-03-17 10:33:01 +00:00
|
|
|
compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
|
2017-10-26 12:16:57 +01:00
|
|
|
|
|
|
|
// TODO: remove the forced update of commons-collections and beanutils when artemis updates them
|
|
|
|
compile "org.apache.commons:commons-collections4:${commons_collections_version}"
|
|
|
|
compile "commons-beanutils:commons-beanutils:${beanutils_version}"
|
2017-03-17 10:33:01 +00:00
|
|
|
compile "org.apache.activemq:artemis-core-client:${artemis_version}"
|
|
|
|
compile "org.apache.activemq:artemis-commons:${artemis_version}"
|
|
|
|
|
2018-05-15 13:22:34 +01:00
|
|
|
compile "io.netty:netty-handler-proxy:$netty_version"
|
2018-05-10 10:01:37 +01:00
|
|
|
|
2017-03-22 15:52:54 +00:00
|
|
|
// For adding serialisation of file upload streams to RPC
|
|
|
|
// TODO: Remove this dependency and the code that requires it
|
|
|
|
compile "commons-fileupload:commons-fileupload:$fileupload_version"
|
|
|
|
|
2017-10-18 13:49:32 +01:00
|
|
|
compile "net.corda.plugins:cordform-common:$gradle_plugins_version"
|
|
|
|
|
2017-03-17 10:33:01 +00:00
|
|
|
// TypeSafe Config: for simple and human friendly config files.
|
|
|
|
compile "com.typesafe:config:$typesafe_config_version"
|
2017-04-07 11:23:25 +01:00
|
|
|
|
2018-05-09 13:37:04 +01:00
|
|
|
compile "org.apache.qpid:proton-j:$protonj_version"
|
2017-08-18 09:17:03 +01:00
|
|
|
|
2018-01-24 11:55:43 +00:00
|
|
|
// SQL connection pooling library
|
|
|
|
compile "com.zaxxer:HikariCP:$hikari_version"
|
|
|
|
|
2017-12-16 15:58:12 +00:00
|
|
|
// For db migration
|
|
|
|
compile "org.liquibase:liquibase-core:$liquibase_version"
|
2017-12-29 13:39:47 +00:00
|
|
|
runtime 'com.mattbertolini:liquibase-slf4j:2.0.0'
|
2017-12-16 15:58:12 +00:00
|
|
|
|
2018-02-20 09:42:58 +00:00
|
|
|
// Apache Curator: a client library for Zookeeper
|
2018-04-17 12:03:43 +01:00
|
|
|
shadow "org.apache.curator:curator-client:${curator_version}"
|
2018-04-16 17:08:44 +01:00
|
|
|
shadow "org.apache.curator:curator-recipes:${curator_version}"
|
2018-02-20 09:42:58 +00:00
|
|
|
testCompile "org.apache.curator:curator-test:${curator_version}"
|
|
|
|
|
2018-05-17 16:18:07 +01:00
|
|
|
// FastClasspathScanner: classpath scanning - needed for the NetworkBootstrapper.
|
2018-05-09 13:37:04 +01:00
|
|
|
compile "io.github.lukehutch:fast-classpath-scanner:$fast_classpath_scanner_version"
|
2018-02-23 14:29:02 +00:00
|
|
|
|
2018-03-13 15:02:58 +00:00
|
|
|
compile "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
|
|
|
|
|
2018-03-14 16:07:31 +00:00
|
|
|
// For caches rather than guava
|
|
|
|
compile "com.github.ben-manes.caffeine:caffeine:$caffeine_version"
|
|
|
|
|
2017-04-07 11:23:25 +01:00
|
|
|
// Unit testing helpers.
|
|
|
|
testCompile "junit:junit:$junit_version"
|
2017-09-22 16:45:48 +01:00
|
|
|
testCompile "org.assertj:assertj-core:$assertj_version"
|
2018-05-17 16:18:07 +01:00
|
|
|
testCompile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
|
2017-09-22 16:45:48 +01:00
|
|
|
testCompile project(':node-driver')
|
2018-05-17 09:59:30 +01:00
|
|
|
|
|
|
|
compile ("org.apache.activemq:artemis-amqp-protocol:${artemis_version}") {
|
|
|
|
// Gains our proton-j version from core module.
|
|
|
|
exclude group: 'org.apache.qpid', module: 'proton-j'
|
|
|
|
}
|
2017-03-17 10:33:01 +00:00
|
|
|
}
|
2017-06-06 15:05:47 +01:00
|
|
|
|
2018-03-20 16:23:29 +00:00
|
|
|
configurations {
|
2018-05-10 13:38:16 +01:00
|
|
|
testArtifacts.extendsFrom testRuntime
|
|
|
|
testCompile.extendsFrom shadow
|
2018-03-20 16:23:29 +00:00
|
|
|
}
|
|
|
|
|
2018-04-16 17:08:44 +01:00
|
|
|
jar {
|
2018-05-10 13:38:16 +01:00
|
|
|
enabled = false
|
2018-04-16 17:08:44 +01:00
|
|
|
baseName 'corda-node-api'
|
|
|
|
}
|
|
|
|
|
|
|
|
shadowJar {
|
|
|
|
baseName jar.baseName
|
|
|
|
configurations = [project.configurations.shadow]
|
|
|
|
classifier ""
|
|
|
|
dependencies {
|
2018-04-17 12:03:43 +01:00
|
|
|
include(dependency("org.apache.curator:curator-client:${curator_version}"))
|
2018-04-16 17:08:44 +01:00
|
|
|
include(dependency("org.apache.curator:curator-recipes:${curator_version}"))
|
2018-04-17 12:03:43 +01:00
|
|
|
include(dependency("org.apache.curator:curator-framework:${curator_version}"))
|
2018-04-16 17:08:44 +01:00
|
|
|
include(dependency('org.apache.zookeeper:zookeeper:3.5.3-beta'))
|
|
|
|
include(dependency('commons-cli:commons-cli:1.2'))
|
|
|
|
include(dependency('io.netty:netty:3.10.5.Final'))
|
|
|
|
include(dependency('com.google.guava:guava:20.0'))
|
|
|
|
}
|
|
|
|
relocate 'org.apache.curator.', 'net.corda.shaded.org.apache.curator.'
|
|
|
|
relocate 'org.apache.zookeeper.', 'net.corda.shaded.org.apache.zookeeper.'
|
|
|
|
relocate 'org.apache.jute.', 'net.corda.shaded.org.apache.jute.'
|
|
|
|
relocate 'org.apache.commons.', 'net.corda.shaded.org.apache.commons.'
|
|
|
|
relocate 'org.jboss.netty.', 'net.corda.shaded.org.jboss.netty.'
|
2018-05-03 14:27:51 +01:00
|
|
|
relocate ('com.google.', 'net.corda.shaded.com.google.') {
|
|
|
|
// This JAR uses annotations from these packages. However,
|
|
|
|
// the annotation classes themselves are not included here
|
|
|
|
// and so we cannot relocate their references.
|
|
|
|
exclude 'com.google.errorprone.**'
|
|
|
|
exclude 'com.google.j2objc.**'
|
|
|
|
}
|
2018-04-16 17:08:44 +01:00
|
|
|
}
|
|
|
|
|
2018-03-20 16:23:29 +00:00
|
|
|
task testJar(type: Jar) {
|
|
|
|
classifier "tests"
|
|
|
|
from sourceSets.test.output
|
|
|
|
}
|
|
|
|
|
|
|
|
artifacts {
|
|
|
|
testArtifacts testJar
|
2018-05-11 14:19:05 +01:00
|
|
|
compile shadowJar
|
2018-03-20 16:23:29 +00:00
|
|
|
}
|
|
|
|
|
2017-06-06 15:05:47 +01:00
|
|
|
publish {
|
2018-04-16 17:08:44 +01:00
|
|
|
name shadowJar.baseName
|
2017-06-06 15:05:47 +01:00
|
|
|
}
|