CORDA-2576 Viral update propagation: select attachments from those loaded by node on startup. (#4745)

* Retrieve contract attachment(s) loaded by node.

* Remove redundant integration test case (downgrade rule checking)

* Address PR review comments.

* Revert changes to classloading dependencies hack.
This commit is contained in:
josecoll
2019-02-14 13:39:14 +00:00
committed by GitHub
parent ce8fa99e59
commit 0bdc8b363a
2 changed files with 2 additions and 58 deletions

View File

@ -441,9 +441,8 @@ open class TransactionBuilder(
require(constraints.none { it in automaticConstraints })
require(isReference || constraints.none { it is HashAttachmentConstraint })
val minimumRequiredContractClassVersion = stateRefs?.map { services.loadContractAttachment(it).contractVersion }?.max() ?: DEFAULT_CORDAPP_VERSION
return services.attachments.getLatestContractAttachments(contractClassName, minimumRequiredContractClassVersion).firstOrNull()
?: throw MissingContractAttachments(states, contractClassName, minimumRequiredContractClassVersion)
return services.cordappProvider.getContractAttachmentID(contractClassName)
?: throw MissingContractAttachments(states, contractClassName)
}
private fun useWhitelistedByZoneAttachmentConstraint(contractClassName: ContractClassName, networkParameters: NetworkParameters) = contractClassName in networkParameters.whitelistedContractImplementations.keys