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
josecoll 7edc18f85d
CORDA-1997 Added constraint type information to vault states table. (#3975)
* Added constraint type information to vault states table.

* Added Vault Query criteria support for constraint data.

* Added documentation and changelog entry.

* Added missing @CordaSerializable.

* Fix minor bug in test setup and parsing code.

* Use binary encoding data types instead of serialize/deserialize.

* Optimized storage of constraints data.
Additional assertions on Vault Query constraint data contents (to validate encoding/decoding).
Tested with CompositeKey containing 10 keys.

* Addressing PR review feedback.

* Query by constraints type and data.

* Revert back accidentally removed code for contractStateType filtering.

* Incorporating final PR review feedback. Use @JvmOverloads on constructor.

* Make sure constraintInfo is class evolution friendly.
2018-10-03 13:41:25 +01:00
.ci CORDA-1509 Configure and enable Gradle Build Cache (#3908) 2018-09-26 13:38:23 +01:00
.github Typo. (#3750) 2018-08-07 10:14:23 +01:00
.idea Single node notary thread safety (#3924) 2018-09-12 13:36:04 +01:00
buildSrc CORDA-1509 Configure and enable Gradle Build Cache (#3908) 2018-09-26 13:38:23 +01:00
client [CORDA-2044] Allow more signature schemes to TestUtils (#4002) 2018-10-01 10:41:03 +01:00
confidential-identities Matchers (#3716) 2018-08-01 10:18:54 +01:00
config Corda-1931 Asynchronous logging (#3989) 2018-10-02 10:33:17 +01:00
core CORDA-1997 Added constraint type information to vault states table. (#3975) 2018-10-03 13:41:25 +01:00
core-deterministic CORDA-1391: Separate out Checkpoint serialization (#3922) 2018-09-19 14:23:29 +01:00
create-jdk8u ENT-1467: Make the deterministic JDK image compatible with IntelliJ. (#3416) 2018-06-26 11:53:16 +01:00
djvm ENT-1906: Upgrade DJVM to use ASM 6.2.1. (#4000) 2018-09-28 11:53:25 +01:00
docs CORDA-1997 Added constraint type information to vault states table. (#3975) 2018-10-03 13:41:25 +01:00
experimental CORDA-1964: Unify versioning of the shadow plugin, and resolve more issues for Gradle 5.0. (#3918) 2018-09-13 10:55:52 +01:00
finance CORDA-1999 Changed isRelevant to relevancyStatus. (#3966) 2018-09-19 15:50:39 +01:00
gradle/wrapper CORDA-1983: Upgrade to Gradle 4.10.1. (#3947) 2018-09-15 14:23:16 +01:00
jdk8u-deterministic CID-251: Integrate DJVM with Corda's existing deterministic-rt. (#3846) 2018-08-24 15:51:40 +01:00
lib [CORDA-1611] Upgrade Quasar to 0.7.10 (#3342) 2018-06-12 09:38:14 +01:00
node CORDA-1997 Added constraint type information to vault states table. (#3975) 2018-10-03 13:41:25 +01:00
node-api CORDA-2016 Add unit tests to ensure SNI header generation will not be changed by accident (#4014) 2018-10-03 08:59:31 +01:00
release-tools NOTICK - Python script for creating test tickets in JIRA (#3979) 2018-10-02 17:55:22 +01:00
samples ENT-2431 Lay foundations for caching metrics (#3955) 2018-09-24 09:55:56 +01:00
serialization CORDA-1391: Separate out Checkpoint serialization (#3922) 2018-09-19 14:23:29 +01:00
serialization-deterministic ENT-1906: Publish corda-deterministic-verifier artifact for testing cordapps. (#3910) 2018-09-07 15:07:06 +01:00
testing CORDA-1997 Added constraint type information to vault states table. (#3975) 2018-10-03 13:41:25 +01:00
tools CORDA-1391: Separate out Checkpoint serialization (#3922) 2018-09-19 14:23:29 +01:00
webserver CORDA-1985: Configure Gradle capsule plugin to use Capsule 1.0.3. (#3949) 2018-09-17 13:55:31 +01:00
.gitignore Update references to point to new repo and remove other redundant references. (#3151) 2018-05-15 17:09:50 +01:00
build.gradle Corda-1931 Asynchronous logging (#3989) 2018-10-02 10:33:17 +01:00
buildCacheSettings.gradle CORDA-1509 Configure and enable Gradle Build Cache (#3908) 2018-09-26 13:38:23 +01:00
constants.properties Corda-1931 Asynchronous logging (#3989) 2018-10-02 10:33:17 +01:00
CONTRIBUTING.md Expanded message to contributors (#2969) 2018-05-04 09:18:36 +01:00
CONTRIBUTORS.md Docs: Add instructions for Fedora (#3986) 2018-09-27 12:05:44 +01:00
deterministic.gradle ENT-1463, ENT-1903: Refactor Gradle for deterministic modules (#3387) 2018-06-18 14:14:48 +01:00
gradle.properties CORDA-1509 Configure and enable Gradle Build Cache (#3908) 2018-09-26 13:38:23 +01:00
gradlew Upgraded to gradle 4.1. 2017-08-23 15:36:08 +01:00
gradlew.bat Upgrade gradle to 4.4.1 2018-01-24 16:15:43 +00:00
LICENSE Update license year to 2018 (#3000) 2018-04-25 14:47:32 +01:00
README.md Updates readme. 2018-05-31 22:01:27 +01:00
settings.gradle CORDA-1509 Configure and enable Gradle Build Cache (#3908) 2018-09-26 13:38:23 +01:00
TRADEMARK Updated URL link to R3 trademark policy 2017-07-13 11:43:41 +01:00

Corda

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

We welcome contributions to Corda! Please see our CONTRIBUTING.md.

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.