mirror of
https://github.com/corda/corda.git
synced 2024-12-29 09:18:58 +00:00
f8ad5c9d10
* Vault Query Service API implementation using JPA Hibernate Added queryBy(QueryCriteria) Vault API and Junit tests. Minor cosmetic API changes following rebase. Fixes following rebase from master Upgraded to requery 1.3.1 WIP - removed 'latestOnly' from LinearStateQueryCriteria WIP - CommercialSchemas V2, V3, V4 testing WIP - sort out generics handling. WIP - most general queries completed. WIP - join queries, contractStateType derivation WIP - refactoring Requery WIP - refactored VaultService to extract a VaultQueryService interface (and associated Requery implementation). WIP - HibernateVaultQuery implementation WIP - Re-structured all Schema definitions (requery/jpa) and make Hibernate Config reusable. WIP - Multi-version schema testing, hibernate query testing. WIP - Custom Criteria and Fungible Criteria impl & testing. WIP - Kotlin Comparable Generics error WIP - Party queries all working now WIP - All VaultQueryTests now working (refactored for AND / OR composition) WIP - added schema registration in CordaPluginRegistry to enable custom vault queries on arbitrary schemas. WIP - added new default Sort NULL order to be NONE + added lots more tests for Logical Operator testing. Mostly identity fixes following rebase from master. Exception handling and public API cleanup in prep for PR. Additional tests for Logical Operators; additional tests for NULLS sort ordering; additional logging; Additional parser to handle Nullable attribute values; added Unary and Collection logical expression handlers Lots of cleanup: participants; trackBy interfaces; additional fungible tests; parser cleanup and improved support for Java Removed all traces of Requery implementation. Further minor cleanup and Junit test fix. Final identity and schema related identity clean-up. Revert unrelated changes. PR review updates: blank lines, isRelevant. Fixed wiring of updatesPublisher for dynamic trackBy queries. PR review changes: multi-versioned schema samples and associated dummy contracts moved to test packages. Fixed problem with sorted queries (not specifying any filterable criteria). PR review: minor updates to address RP comments. Typesafe custom query criteria Cleanup: remove redundant tests. Further clean-up and make all Java test work successfully. Remove debugging print statements. Rebased from master - changes required due to DealState module change. fixed broken assertion caused by DealState ordering change (different package) Fixed transaction demarcation issue causing "java.lang.IllegalStateException: Was not expecting to find existing database transaction on current strand" trackBy() now filters on ContractType and StateStatus (CONSUMED, UNCONSUMED, ALL) Added tests to exercise RPCOps trackBy and queryBy (RPC smoke test and CordaRPCOps) Added additional @CordaSerializable annotations. Updated documentation and referenced sample code. Added deprecation annotations. Re-added missing deprecation annotation. Hibernate debug logging is now configurable and disabled by default. Introduced common Sort attributes based on the node schemas. Completely removed NULL_HANDLING sort parameter as this is not supported in JPA. Revisited and fixed usage of @CordaSerializable. * Minor fix following rebase from master. * Remove blank line as per RP PR feedback request. * Minor Java documentation and example clean-up. * Disable BFT Notary Service tests.
103 lines
3.2 KiB
Groovy
103 lines
3.2 KiB
Groovy
apply plugin: 'kotlin'
|
|
apply plugin: 'kotlin-jpa'
|
|
apply plugin: 'net.corda.plugins.quasar-utils'
|
|
apply plugin: 'net.corda.plugins.publish-utils'
|
|
|
|
description 'Corda core'
|
|
|
|
buildscript {
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
|
|
testCompile "junit:junit:$junit_version"
|
|
testCompile "commons-fileupload:commons-fileupload:$fileupload_version"
|
|
|
|
// Guava: Google test library (collections test suite)
|
|
testCompile "com.google.guava:guava-testlib:$guava_version"
|
|
|
|
// Bring in the MockNode infrastructure for writing protocol unit tests.
|
|
testCompile project(":node")
|
|
testCompile project(":test-utils")
|
|
|
|
compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version"
|
|
compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
|
|
testCompile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
|
|
|
|
// Thread safety annotations
|
|
compile "com.google.code.findbugs:jsr305:3.0.1"
|
|
|
|
// Log4J: logging framework (ONLY explicitly referenced by net.corda.core.utilities.Logging.kt)
|
|
compile "org.apache.logging.log4j:log4j-core:${log4j_version}"
|
|
|
|
// SLF4J: commons-logging bindings for a SLF4J back end
|
|
compile "org.slf4j:jcl-over-slf4j:$slf4j_version"
|
|
compile "org.slf4j:slf4j-api:$slf4j_version"
|
|
|
|
// AssertJ: for fluent assertions for testing
|
|
testCompile "org.assertj:assertj-core:${assertj_version}"
|
|
|
|
// TODO: Upgrade to junit-quickcheck 0.8, once it is released,
|
|
// because it depends on org.javassist:javassist instead
|
|
// of javassist:javassist.
|
|
testCompile "com.pholser:junit-quickcheck-core:$quickcheck_version"
|
|
testCompile "com.pholser:junit-quickcheck-generators:$quickcheck_version"
|
|
|
|
// Guava: Google utilities library.
|
|
compile "com.google.guava:guava:$guava_version"
|
|
|
|
// RxJava: observable streams of events.
|
|
compile "io.reactivex:rxjava:$rxjava_version"
|
|
|
|
// Kryo: object graph serialization.
|
|
compile "com.esotericsoftware:kryo:4.0.0"
|
|
compile "de.javakaffee:kryo-serializers:0.41"
|
|
|
|
// Apache JEXL: An embeddable expression evaluation library.
|
|
// This may be temporary until we experiment with other ways to do on-the-fly contract specialisation via an API.
|
|
compile "org.apache.commons:commons-jexl3:3.0"
|
|
|
|
// For JSON
|
|
compile "com.fasterxml.jackson.core:jackson-databind:${jackson_version}"
|
|
|
|
// Java ed25519 implementation. See https://github.com/str4d/ed25519-java/
|
|
compile "net.i2p.crypto:eddsa:$eddsa_version"
|
|
|
|
// Bouncy castle support needed for X509 certificate manipulation
|
|
compile "org.bouncycastle:bcprov-jdk15on:${bouncycastle_version}"
|
|
compile "org.bouncycastle:bcpkix-jdk15on:${bouncycastle_version}"
|
|
|
|
// JPA 2.1 annotations.
|
|
compile "org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final"
|
|
|
|
// Requery: SQL based query & persistence for Kotlin
|
|
compile "io.requery:requery-kotlin:$requery_version"
|
|
|
|
// For AMQP serialisation.
|
|
compile "org.apache.qpid:proton-j:0.19.0"
|
|
}
|
|
|
|
configurations {
|
|
testArtifacts.extendsFrom testRuntime
|
|
}
|
|
|
|
task testJar(type: Jar) {
|
|
classifier "tests"
|
|
from sourceSets.test.output
|
|
}
|
|
|
|
artifacts {
|
|
testArtifacts testJar
|
|
}
|
|
|
|
jar {
|
|
baseName 'corda-core'
|
|
}
|
|
|
|
publish {
|
|
name = jar.baseName
|
|
}
|