CORDA-2570 revert multiple contract attachments per transaction

This commit is contained in:
Tudor Malene 2019-02-12 18:49:05 +00:00 committed by tudor.malene@gmail.com
parent a6510ae952
commit 9448b9bd86

View File

@ -100,6 +100,8 @@ class Verifier(val ltx: LedgerTransaction,
if (contractWithMultipleAttachments != null) throw TransactionVerificationException.ConflictingAttachmentsRejection(ltx.id, contractWithMultipleAttachments)
val result = contractAttachmentsPerContract.toMap()
// Check that there is an attachment for each contract.
if (result.keys != contractClasses) throw TransactionVerificationException.MissingAttachmentRejection(ltx.id, contractClasses.minus(result.keys).first())
return result
@ -370,6 +372,7 @@ class Verifier(val ltx: LedgerTransaction,
try {
contract.verify(ltx)
} catch (e: Exception) {
logger.error("Error validating transaction ${ltx.id}.", e)
throw TransactionVerificationException.ContractRejection(ltx.id, contract, e)
}
}