Corda is an open source blockchain project, designed for business from the start. Only Corda allows you to build interoperable blockchain networks that transact in strict privacy. Corda's smart contract technology allows businesses to transact directly, with value.
Go to file
Walter Oggioni 326afacedb
improved interactive shell flow lookup logic ()
the current logic when a user type
```
flow start SomeFlow
```
is to search for the string `SomeFlow` in all registered flow names, if there is at exactly flow that ends with that string, it will be selected,
if there is more than one, the first in aphabetical order will be selected. If there are multiple flows that contains the string but no one that ends with it, it is considered ambiguous,
if there is exactly one containing the string it is instead selected (it doesn't matter whether it ends or not with it). All other cases are considered errors.
The goal of this change is to address the case where the node contains

```
net.corda.cordappp.AnotherSomeFlow
net.corda.cordappp.ImprovedSomeFlow
net.corda.cordappp.SomeFlow
```

typing
```
flow start SomeFlow
```
currently results in running `net.corda.cordappp.AnotherSomeFlow` because it comes first in alphabetical order, while `net.corda.cordappp.SomeFlow` is a better matches because the input substring
matches a bigger portion of the full flow name
2020-05-21 09:27:13 +01:00
.ci [INFRA-351] Jenkinsfile for code check jobs () 2020-05-20 22:07:04 +01:00
.github Changed frequency of Github Actions for sync between GH and Jira () 2020-04-14 10:17:44 +01:00
.idea Merge remote-tracking branch 'origin/release/os/4.3' into my_merge_branch 2019-11-04 17:48:15 +00:00
client ENT-5285, ENT-5296 Ignore ForkJoinPool.commonPool threads in RPCStabilityTests () 2020-05-11 15:38:23 +01:00
common EG-2116 - Add aliases for version attribute errors () 2020-05-19 11:53:29 +01:00
confidential-identities Merge branch 'release/os/4.4' into chrisr3-44-merge 2020-03-04 16:27:44 +00:00
config EG-71 - Changed the default file limit in the log4j2 configuration () 2020-03-02 09:26:46 +00:00
core EG-1980 - Remove stale docs links from OS () 2020-05-14 12:57:59 +01:00
core-deterministic CORDA-3755: Switched attachments map to a WeakHashMap () 2020-05-12 09:51:12 +01:00
core-tests NOTICK Fix timing issue in FlowIsKilledTest () 2020-05-19 16:54:34 +01:00
detekt-plugins NOTICK: Update Gradle files for DeteKt plugins. () 2020-02-16 08:21:05 +00:00
docker EG-153 - Adding sshd by default to docker node.conf template () 2020-04-30 15:03:08 +01:00
docs EG-1404 - Retired the rst doc source structure under /docs and update… () 2020-04-23 09:56:57 +01:00
experimental [NOTICK] - Enable check in detekt for unused imports () 2020-03-26 15:46:33 +00:00
finance CORDA-3698: Require no classifier for Open Core and DJVM-related modules. () 2020-04-06 11:00:40 +01:00
gradle/wrapper use proxied gradle to prevent slow lorrising due to too many requests () 2020-03-12 08:15:28 +00:00
isolated CORDA-2893 Upgrade Corda to use Gradle 5.4.1 (Take 2) () 2019-05-20 14:26:42 +01:00
jdk8u-deterministic CORDA-3523: DJVM custom serializers and whitelists () 2020-01-16 17:48:15 +00:00
lib fix merge conflicts due to changes in Signed test cordapp creation 2019-11-05 17:42:38 +00:00
node ENT-5278 - add missed checks for empty lists () 2020-05-19 16:55:09 +01:00
node-api EG-1980 - Remove stale docs links from OS () 2020-05-14 12:57:59 +01:00
node-api-tests CORDA-3569 - Add RestrictedConnection and more blocked methods to RestrictedEntityManager () 2020-04-21 14:39:41 +01:00
release-tools CORDA-3017 - Fix release tooling when product name != jira project () 2019-06-21 09:28:07 +01:00
samples CORDA-3716: Fix SandboxEnumSerializer to handle enums that override toString(). () 2020-04-19 23:29:08 +01:00
serialization CORDA-3750: Delete unwanted methods from the deterministic artifacts. () 2020-05-04 11:33:06 +01:00
serialization-deterministic NOTICK: Fix more Gradle technical debt. () 2020-02-20 17:01:24 +00:00
serialization-djvm CORDA-3738: Upgrade to DJVM 1.1-RC03. () 2020-05-05 17:32:39 +01:00
serialization-tests ENT-5043 separate out test utils () 2020-03-03 15:55:17 +00:00
testing EG-1980 - Remove stale docs links from OS () 2020-05-14 12:57:59 +01:00
tools improved interactive shell flow lookup logic () 2020-05-21 09:27:13 +01:00
.dockerignore WIP Kubenetes parallel build () 2019-09-03 15:40:08 +00:00
.gitignore ENT-4595 Add git based version () 2019-12-11 17:50:27 +00:00
build.gradle EG-1980 - Remove stale docs links from OS () 2020-05-14 12:57:59 +01:00
BUILD.md add a shared memory port allocator to allow multiple processes to sha… () 2019-07-02 18:38:33 +00:00
buildCacheSettings.gradle Explicitly disable remote gradle build cache when building locally. () 2018-10-19 16:40:06 +01:00
constants.properties Upgrade ClassGraph to 4.8.78 () 2020-05-12 13:23:38 +01:00
CONTRIBUTING.md Combines all contributing info in one place. Clean-up. () 2018-11-20 18:17:11 +00:00
CONTRIBUTORS.md Contract tutorial update and Contributors list update () 2019-07-30 14:51:34 +01:00
detekt-baseline-config.yml TM-45 Make detektBaseline pass () 2019-10-15 15:49:31 +01:00
detekt-baseline.xml CORDA-3726: Remove memory leaks when many InProcess nodes started () 2020-04-23 08:53:51 +01:00
detekt-config.yml [NOTICK] - Enable check in detekt for unused imports () 2020-03-26 15:46:33 +00:00
deterministic.gradle CORDA-2876: Ensure that sandboxable byte-code is compiled for Java 8. 2019-11-14 16:22:28 +00:00
gradle.properties Revert "Merge pull request from corda/jdk11-migration-gradle5-upgrade" () 2019-05-20 16:16:49 +01:00
gradlew CORDA-2893 Upgrade Corda to use Gradle 5.4.1 (Take 2) () 2019-05-20 14:26:42 +01:00
gradlew.bat CORDA-2893 Upgrade Corda to use Gradle 5.4.1 (Take 2) () 2019-05-20 14:26:42 +01:00
java8.gradle CORDA-3698: Require no classifier for Open Core and DJVM-related modules. () 2020-04-06 11:00:40 +01:00
Jenkinsfile INFRA-284 Testing out new aks template () 2020-04-16 07:56:39 +01:00
LICENSE Use full Apache 2.0 license so GitHub recognizes it 2019-08-23 12:24:37 +02:00
README.md Update README.md () 2020-04-09 15:31:19 +01:00
SECURITY.md CORDA-2958 Security policy for corda 2019-06-03 10:38:13 +02:00
settings.gradle [EG-440] Add some error codes and the error resource generation tool () 2020-04-29 11:21:50 +01:00
sizing.sh add a shared memory port allocator to allow multiple processes to sha… () 2019-07-02 18:38:33 +00:00
TRADEMARK Updated URL link to R3 trademark policy 2017-07-13 11:43:41 +01:00

Corda

License

Corda

Corda is an open source blockchain project, designed for business from the start. Only Corda allows you to build interoperable blockchain networks that transact in strict privacy. Corda's smart contract technology allows businesses to transact directly, with value.

Features

  • Smart contracts that can be written in Java and other JVM languages
  • Flow framework to manage communication and negotiation between participants
  • Peer-to-peer network of nodes
  • "Notary" infrastructure to validate uniqueness and sequencing of transactions without global broadcast
  • Enables the development and deployment of distributed apps called CorDapps
  • Written in Kotlin, targeting the JVM

Getting started

  1. Read the Getting Started documentation
  2. Run the Example CorDapp
  3. Read about Corda's Key Concepts
  4. Follow the Hello, World! tutorial

Contributing

Corda is an open-source project and contributions are welcome!

To find out how to contribute, please see our contributing docs.

License

Apache 2.0

Acknowledgements

YourKit

YourKit supports open source projects with its full-featured Java Profiler.

YourKit, LLC is the creator of YourKit Java Profiler and YourKit .NET Profiler, innovative and intelligent tools for profiling Java and .NET applications.