mirror of
https://github.com/corda/corda.git
synced 2024-12-21 22:07:55 +00:00
453f7cd223
Resolve BankOfCorda through NMS in protocol Fixes following Integration testing. Register custom RPC Kryo classes. Protocol -> Flow renaming Bank of Corda demo - Issuer of Cash Resolve BankOfCorda through NMS in protocol Fixes following Integration testing. Protocol -> Flow renaming Addressed all comments in PR review. Removed bank lines. Updated minor inconsistency in README.md All protocol references changed to flow. changed protocol -> flow in TODO comment. changed startProtocolPermission -> startFlowPermission in README.md Added transaction id to IssuerFlow Success response. Removed explicit call to record Cash Move transaction (as already recorded in subflow) Removed quasar dependency. Addressed comment in PR. Updated to use CompositeKey. Added arguments to pass in Currency and Amount. Updated run configurations to pass in Currency and Amount values Added additional parameter to IssuerFlow request: issueToPartyReference Added Vault updates verification in RPC Integration test. Fixed RPC Integration test (Vault assertions) Updated run-time dependencies in line with other demos. Applied changes following PR review (exception handling, party resolution handling, docs) Updated gradle client run configs with new parameters. Main driver app now uses standard out for display (was using logger info() but nothing was being displayed because of restrictive config) Fixed formatting display problems. Updated Web Api code to use new CordaRPCOps interface (and new partyFromName() exposed method) Removed unused import.
148 lines
3.8 KiB
Groovy
148 lines
3.8 KiB
Groovy
apply plugin: 'java'
|
|
apply plugin: 'kotlin'
|
|
apply plugin: 'idea'
|
|
apply plugin: 'net.corda.plugins.quasar-utils'
|
|
apply plugin: 'net.corda.plugins.publish-utils'
|
|
apply plugin: 'net.corda.plugins.cordformation'
|
|
apply plugin: 'maven-publish'
|
|
|
|
repositories {
|
|
mavenLocal()
|
|
mavenCentral()
|
|
jcenter()
|
|
maven {
|
|
url 'https://dl.bintray.com/kotlin/exposed'
|
|
}
|
|
}
|
|
|
|
sourceSets {
|
|
main {
|
|
resources {
|
|
srcDir "../../config/dev"
|
|
}
|
|
}
|
|
test {
|
|
resources {
|
|
srcDir "../../config/test"
|
|
}
|
|
}
|
|
integrationTest {
|
|
kotlin {
|
|
compileClasspath += main.output + test.output
|
|
runtimeClasspath += main.output + test.output
|
|
srcDir file('src/integration-test/kotlin')
|
|
}
|
|
}
|
|
}
|
|
|
|
configurations {
|
|
integrationTestCompile.extendsFrom testCompile
|
|
integrationTestRuntime.extendsFrom testRuntime
|
|
}
|
|
|
|
dependencies {
|
|
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
|
testCompile group: 'junit', name: 'junit', version: '4.11'
|
|
|
|
// Corda integration dependencies
|
|
runtime project(path: ":node", configuration: 'runtimeArtifacts')
|
|
compile project(':core')
|
|
compile project(':client')
|
|
compile project(':node')
|
|
compile project(':finance')
|
|
compile project(':test-utils')
|
|
|
|
// Javax is required for webapis
|
|
compile "org.glassfish.jersey.core:jersey-server:${jersey_version}"
|
|
}
|
|
|
|
task deployNodes(type: net.corda.plugins.Cordform, dependsOn: [':install', 'build']) {
|
|
directory "./build/nodes"
|
|
// This name "Notary" is hard-coded into BankOfCordaClientApi so if you change it here, change it there too.
|
|
// In this demo the node that runs a standalone notary also acts as the network map server.
|
|
networkMap "Notary"
|
|
node {
|
|
name "Notary"
|
|
dirName "notary"
|
|
nearestCity "London"
|
|
advertisedServices = ["corda.notary.validating"]
|
|
artemisPort 10002
|
|
webPort 10003
|
|
cordapps = []
|
|
}
|
|
node {
|
|
name "BankOfCorda"
|
|
dirName "node-bank-of-corda"
|
|
nearestCity "London"
|
|
advertisedServices = []
|
|
artemisPort 10004
|
|
webPort 10005
|
|
cordapps = []
|
|
// TODO: task needs to parse this item when generating node.conf
|
|
// rpcUsers : [
|
|
// { user=user1, password=test, permissions=[ StartFlow.net.corda.bank.flow.IssuerFlow$IssuanceRequester ] }
|
|
// ]
|
|
}
|
|
node {
|
|
name "BigCorporation"
|
|
dirName "node-big-corp"
|
|
nearestCity "New York"
|
|
advertisedServices = []
|
|
artemisPort 10006
|
|
webPort 10007
|
|
cordapps = []
|
|
}
|
|
}
|
|
|
|
task integrationTest(type: Test, dependsOn: []) {
|
|
testClassesDir = sourceSets.integrationTest.output.classesDir
|
|
classpath = sourceSets.integrationTest.runtimeClasspath
|
|
}
|
|
|
|
idea {
|
|
module {
|
|
downloadJavadoc = true // defaults to false
|
|
downloadSources = true
|
|
}
|
|
}
|
|
|
|
publishing {
|
|
publications {
|
|
jarAndSources(MavenPublication) {
|
|
from components.java
|
|
artifactId 'bankofcorda'
|
|
|
|
artifact sourceJar
|
|
artifact javadocJar
|
|
}
|
|
}
|
|
}
|
|
|
|
task runIssuer(type: JavaExec) {
|
|
classpath = sourceSets.main.runtimeClasspath
|
|
main = 'net.corda.bank.BankOfCordaDriverKt'
|
|
args '--role'
|
|
args 'ISSUER'
|
|
}
|
|
|
|
task runRPCCashIssue(type: JavaExec) {
|
|
classpath = sourceSets.main.runtimeClasspath
|
|
main = 'net.corda.bank.BankOfCordaDriverKt'
|
|
args '--role'
|
|
args 'ISSUE_CASH_RPC'
|
|
args '--quantity'
|
|
args 20000
|
|
args '--currency'
|
|
args 'USD'
|
|
}
|
|
|
|
task runWebCashIssue(type: JavaExec) {
|
|
classpath = sourceSets.main.runtimeClasspath
|
|
main = 'net.corda.bank.BankOfCordaDriverKt'
|
|
args '--role'
|
|
args 'ISSUE_CASH_WEB'
|
|
args '--quantity'
|
|
args 30000
|
|
args '--currency'
|
|
args 'GBP'
|
|
} |