Skip to content

Commit fe25336

Browse files
authored
Merge pull request #26 from corda/2020Q4CodeCleanUp
2020 Q4 code clean up
2 parents 3b62376 + c493bae commit fe25336

File tree

732 files changed

+11450
-9979
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

732 files changed

+11450
-9979
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
*/.idea/*
88
**/.vscode/*
99
**/out/
10+
&&/node_modules/
1011
**/logs/
1112
corda-nodeinfo/corda-nodeinfo.iml
1213
*~*

Accounts/README.md

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,18 @@
1-
## samples-kotlin/Accounts
1+
## Accounts CorDapp Samples
22

3-
This folder features Corda Accounts sample projects.
3+
This folder features Corda Accounts sample projects. Learn more about [Accounts](https://training.corda.net/libraries/accounts-lib/).
44

55
### [Supply Chain](./supplychain):
6-
This CorDapp mimics a supply chain transaction, where the deal is incorporated among different teams in the companies on both side of the trade.
76

8-
### [Tic Tac Thor](./tictacthor):
9-
This CorDapp recreates the game of Tic Tac Toe via Corda. It primarily demonstrates how you can have [LinearState](https://docs.corda.net/docs/corda-os/api-states.html#linearstate) transactions between cross-node accounts.
7+
This CorDapp mimics a supply chain transaction, where the deal is incorporated among different teams in the companies on both side of the trade.
8+
<p align="center">
9+
<img src="./supplychain/Business%20Flow.png" alt="Corda" width="700">
10+
</p>
1011

12+
### [Tic Tac Thor](./tictacthor):
1113

12-
### [Worldcup Ticket Booking](./worldcupticketbooking):
13-
This CorDapp demonstrates an ticket booking system with a collaboration of Corda [Accounts](https://training.corda.net/libraries/accounts-lib/) and [Tokens](https://training.corda.net/libraries/tokens-sdk/).
14+
This CorDapp recreates the game of Tic Tac Toe via Corda. It primarily demonstrates how you can have LinearState transactions between cross-node accounts.
15+
<p align="center">
16+
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/3/32/Tic_tac_toe.svg/1024px-Tic_tac_toe.svg.png" alt="Corda" width="200">
17+
</p>
1418

Accounts/supplychain/build.gradle

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@ buildscript {
1313
log4j_version = constants.getProperty("log4jVersion")
1414
slf4j_version = constants.getProperty("slf4jVersion")
1515
corda_platform_version = constants.getProperty("platformVersion").toInteger()
16-
//springboot
17-
spring_boot_version = '2.0.2.RELEASE'
18-
spring_boot_gradle_plugin_version = '2.0.2.RELEASE'
16+
1917
//account
2018
accounts_release_group = 'com.r3.corda.lib.accounts'
2119
accounts_release_version = '1.0'
@@ -28,18 +26,15 @@ buildscript {
2826
mavenLocal()
2927
mavenCentral()
3028
jcenter()
31-
maven { url 'https://software.r3.com/artifactory/corda-lib' }
32-
maven { url 'https://software.r3.com/artifactory/corda' }
33-
// Corda dependencies for the patched Quasar version
34-
maven { url "https://software.r3.com/artifactory/corda-dependencies" } // access to the patched Quasar version
29+
maven { url 'https://software.r3.com/artifactory/corda-releases' }
30+
3531
}
3632

3733
dependencies {
3834
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
3935
classpath "net.corda.plugins:cordapp:$corda_gradle_plugins_version"
4036
classpath "net.corda.plugins:cordformation:$corda_gradle_plugins_version"
4137
classpath "net.corda.plugins:quasar-utils:$corda_gradle_plugins_version"
42-
classpath "org.springframework.boot:spring-boot-gradle-plugin:$spring_boot_gradle_plugin_version"
4338
}
4439
}
4540

@@ -51,11 +46,11 @@ allprojects {
5146
jcenter()
5247
mavenCentral()
5348
maven { url 'https://software.r3.com/artifactory/corda' }
54-
// Can be removed post-release - used to get nightly snapshot build.
55-
maven { url 'https://software.r3.com/artifactory/corda-lib' }
56-
maven { url 'https://software.r3.com/artifactory/corda-lib-dev' }
5749
maven { url 'https://jitpack.io' }
58-
maven { url "https://repo.gradle.org/gradle/libs-releases-local" }
50+
//SDK lib
51+
maven { url 'https://software.r3.com/artifactory/corda-lib' }
52+
//Gradle Plugins
53+
maven { url 'https://repo.gradle.org/gradle/libs-releases' }
5954
}
6055

6156
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile) {
@@ -109,11 +104,6 @@ dependencies {
109104
cordapp "$confidential_id_release_group:ci-workflows:$confidential_id_release_version"
110105
cordapp "$accounts_release_group:accounts-contracts:$accounts_release_version"
111106
cordapp "$accounts_release_group:accounts-workflows:$accounts_release_version"
112-
113-
114-
115-
116-
117107
}
118108

119109
task deployNodes(type: net.corda.plugins.Cordform, dependsOn: ['jar']) {
@@ -127,7 +117,7 @@ task deployNodes(type: net.corda.plugins.Cordform, dependsOn: ['jar']) {
127117

128118
cordapp project(":contracts")
129119
cordapp project(":workflows")
130-
runSchemaMigration = true
120+
runSchemaMigration = true
131121
}
132122
node {
133123
name "O=Notary,L=London,C=GB"

Accounts/supplychain/contracts/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ cordapp {
55
targetPlatformVersion 4
66
minimumPlatformVersion 4
77
contract {
8-
name "accounts_SupplyChain Contract"
8+
name "supplychain Contract"
99
vendor "Corda Open Source"
1010
licence "A liberal, open source licence"
1111
versionId 1

Accounts/supplychain/contracts/src/main/kotlin/com/accounts_SupplyChain/contracts/InvoiceStateContract.kt

Lines changed: 0 additions & 26 deletions
This file was deleted.
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
package com.accounts_SupplyChain.contracts
1+
package net.corda.samples.supplychain.contracts
22

33
import net.corda.core.contracts.*
44
import net.corda.core.transactions.LedgerTransaction
55

66
class CargoStateContract : Contract{
77

88
companion object{
9-
const val ID = "com.accounts_SupplyChain.contracts.CargoStateContract"
9+
const val ID = "net.corda.samples.supplychain.contracts.CargoStateContract"
1010
}
1111

1212

@@ -21,6 +21,6 @@ class CargoStateContract : Contract{
2121
}
2222

2323
interface Commands : CommandData {
24-
class Create : Commands
24+
class Create : CargoStateContract.Commands
2525
}
2626
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
package com.accounts_SupplyChain.contracts
1+
package net.corda.samples.supplychain.contracts
22

33
import net.corda.core.contracts.*
44
import net.corda.core.transactions.LedgerTransaction
55

66
class InternalMessageStateContract : Contract{
77

88
companion object{
9-
const val ID = "com.accounts_SupplyChain.contracts.InternalMessageStateContract"
9+
const val ID = "net.corda.samples.supplychain.contracts.InternalMessageStateContract"
1010
}
1111

1212

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
package net.corda.samples.supplychain.contracts
2+
3+
4+
import net.corda.core.contracts.*
5+
import net.corda.core.transactions.LedgerTransaction
6+
import net.corda.samples.supplychain.states.InvoiceState
7+
8+
class InvoiceStateContract : Contract{
9+
10+
companion object{
11+
const val ID = "net.corda.samples.supplychain.contracts.InvoiceStateContract"
12+
}
13+
14+
override fun verify(tx: LedgerTransaction) { /*
15+
* We can use the requireSingleCommand function to extract command data from transaction.
16+
* However, it is possible to have multiple commands in a signle transaction.
17+
*/
18+
val command = tx.commands.requireSingleCommand<Commands>()
19+
when (command.value) {
20+
is Commands.Create -> requireThat {
21+
val inputs = tx.inputStates
22+
val outputs = tx.outputStates
23+
24+
// no inputs to the transaction
25+
"No inputs should be consumed when creating a new SantaSession.".using(inputs.isEmpty())
26+
"Transaction must have exactly one output.".using(outputs.size == 1)
27+
28+
val output = outputs[0] as InvoiceState
29+
// must be three or more players
30+
"Invoice amount must be a valid number (Greater than zero)".using(output.amount > 0)
31+
null
32+
}
33+
}
34+
}
35+
36+
interface Commands : CommandData {
37+
class Create : Commands
38+
}
39+
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
package com.accounts_SupplyChain.contracts
1+
package net.corda.samples.supplychain.contracts
22

33
import net.corda.core.contracts.*
44
import net.corda.core.transactions.LedgerTransaction
55

66
class PaymentStateContract : Contract{
77

88
companion object{
9-
const val ID = "com.accounts_SupplyChain.contracts.PaymentStateContract"
9+
const val ID = "net.corda.samples.supplychain.contracts.PaymentStateContract"
1010
}
1111

1212

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
package com.accounts_SupplyChain.contracts
1+
package net.corda.samples.supplychain.contracts
22

33
import net.corda.core.contracts.*
44
import net.corda.core.transactions.LedgerTransaction
55

66
class ShippingRequestStateContract : Contract {
77

88
companion object {
9-
const val ID = "com.accounts_SupplyChain.contracts.ShippingRequestStateContract"
9+
const val ID = "net.corda.samples.supplychain.contracts.ShippingRequestStateContract"
1010
}
1111

1212

0 commit comments

Comments
 (0)