Add transaction serialization dependencies

This commit is contained in:
lemjclarke 2022-02-25 15:13:04 +00:00
parent 166bc6b3f3
commit 633be8d631
6 changed files with 49 additions and 5 deletions

View File

@ -193,6 +193,8 @@ buildscript {
} }
maven { maven {
// TODO: fix conclaveRepo property
// (none of the conclave properties seem to be sourced from gradle.properties, they appear to be coming from somewhere else)
def path = Paths.get(rootDir.absolutePath).resolve("./repo").toAbsolutePath().normalize() def path = Paths.get(rootDir.absolutePath).resolve("./repo").toAbsolutePath().normalize()
if (!Files.isDirectory(path.resolve("com"))) { if (!Files.isDirectory(path.resolve("com"))) {
if (Files.isDirectory(Paths.get("/repo/com"))) { if (Files.isDirectory(Paths.get("/repo/com"))) {
@ -440,7 +442,9 @@ allprojects {
jcenter() jcenter()
maven { maven {
def path = Paths.get(rootDir.absolutePath).resolve(conclaveRepo).toAbsolutePath().normalize() // TODO: fix conclaveRepo property
// (none of the conclave properties seem to be sourced from gradle.properties, they appear to be coming from somewhere else)
def path = Paths.get(rootDir.absolutePath).resolve("./repo").toAbsolutePath().normalize()
if (!Files.isDirectory(path.resolve("com"))) { if (!Files.isDirectory(path.resolve("com"))) {
if (Files.isDirectory(Paths.get("/repo/com"))) { if (Files.isDirectory(Paths.get("/repo/com"))) {
path = Paths.get("/repo") path = Paths.get("/repo")

View File

@ -1,7 +1,11 @@
apply plugin: 'kotlin' apply plugin: 'kotlin'
dependencies { dependencies {
implementation "com.r3.conclave:conclave-common:$conclaveVersion" // TODO: fix conclaveVersion property
// (none of the conclave properties seem to be sourced from gradle.properties, they appear to be coming from somewhere else)
implementation "com.r3.conclave:conclave-common:1.1"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
implementation "net.i2p.crypto:eddsa:0.3.0" implementation "net.i2p.crypto:eddsa:0.3.0"
implementation project(':core')
} }

View File

@ -1,6 +1,20 @@
plugins { plugins {
id 'kotlin' id 'kotlin'
id 'com.r3.conclave.enclave' id 'com.r3.conclave.enclave'
id 'org.jetbrains.kotlin.jvm'
id 'org.jetbrains.kotlin.plugin.allopen'
}
apply plugin: 'kotlin'
apply plugin: 'java'
apply plugin: 'kotlin-allopen'
apply plugin: 'kotlin-noarg'
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
kotlinOptions {
jvmTarget = "1.8"
javaParameters = true
}
} }
/** /**
@ -10,6 +24,11 @@ tasks.withType(JavaCompile) {
sourceCompatibility = JavaVersion.VERSION_1_8 sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8
options.encoding = 'UTF-8' options.encoding = 'UTF-8'
options.compilerArgs << '-parameters'
}
noArg {
annotations("net.corda.core.serialization.CordaSerializable", "net.corda.core.contracts.BelongsToContract")
} }
/** /**
@ -31,9 +50,21 @@ tasks.withType(AbstractCompile) {
dependencies { dependencies {
implementation project(':common-enclave') implementation project(':common-enclave')
implementation project(':node-api')
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
implementation 'junit:junit:4.13.1' implementation 'junit:junit:4.13.1'
implementation "com.r3.conclave:conclave-enclave"
implementation ("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.72") {
exclude group: 'org.jetbrains.kotlinx', module: 'kotlinx-serialization-json'
}
implementation "org.jetbrains.kotlin:kotlin-reflect:1.3.72"
implementation "org.bouncycastle:bcprov-jdk15on:1.68"
implementation "com.github.ben-manes.caffeine:caffeine:2.7.0"
testImplementation(platform('org.junit:junit-bom:5.7.0')) testImplementation(platform('org.junit:junit-bom:5.7.0'))
} }

View File

@ -47,8 +47,9 @@ abstract class CommandEnclave : Enclave() {
* @param mail the received [EnclaveMail]. * @param mail the received [EnclaveMail].
* @param routingHint a [String] containing the executing flowId and enclave command to execute. * @param routingHint a [String] containing the executing flowId and enclave command to execute.
* @throws [IllegalArgumentException] if [routingHint] is null, or cannot be parsed. * @throws [IllegalArgumentException] if [routingHint] is null, or cannot be parsed.
* @throws [IllegalStateException] if attempting to execute a command when the host has not been registered.
*/ */
override fun receiveMail(mail: EnclaveMail, routingHint: String?) { override fun receiveMail(id: Long, mail: EnclaveMail, routingHint: String?) {
routingHint ?: throw IllegalArgumentException( routingHint ?: throw IllegalArgumentException(
"routingHint must be set for this enclave: ${this.javaClass.simpleName}") "routingHint must be set for this enclave: ${this.javaClass.simpleName}")

View File

@ -5,4 +5,5 @@ owasp.failOnError=false
owasp.failBuildOnCVSS=11.0 owasp.failBuildOnCVSS=11.0
compilation.allWarningsAsErrors=false compilation.allWarningsAsErrors=false
test.parallel=false test.parallel=false
conclaveVersion=1.2.1 conclaveVersion=1.1
conclaveRepo=./repo

View File

@ -27,7 +27,10 @@ pluginManagement {
} }
plugins { plugins {
id 'com.r3.conclave.enclave' version conclaveVersion apply false println("CONCLAVE VERSION: $conclaveVersion")
// TODO: fix conclaveVersion property
// (none of the conclave properties seem to be sourced from gradle.properties, they appear to be coming from somewhere else)
id 'com.r3.conclave.enclave' version '1.1' apply false
} }
} }
// The project is named 'corda-project' and not 'corda' because if this is named the same as the // The project is named 'corda-project' and not 'corda' because if this is named the same as the