hyperledger-cacti / cacti

Hyperledger Cacti is a new approach to the blockchain interoperability problem
https://wiki.hyperledger.org/display/cactus
Apache License 2.0
344 stars 286 forks source link

feat(copm): add Corda COPM implementation #3625

Open jenniferlianne opened 1 week ago

jenniferlianne commented 1 week ago

Primary change:

Implements COPM primitives for Corda as a cacti plugin. The implementation follows the model of the Corda ledger connector plugin, where a typescript pass-through implementation is registered on the plugin server, and commands are implemented on a separate grpc server in the Kotlin Spring framework.

Secondary changes:

Pull Request Requirements

Character Limit

A Must Read for Beginners For rebasing and squashing, here's a must read guide for beginners.

jenniferlianne commented 1 week ago

@jenniferlianne Looking pretty high quality in general, but as usual I have some requests. On top of the comments I left inline, please make sure to include a test case which verifies the plugin being functional while used through the API server (you'll most likely need a separate package because this one cannot depend on the API server due to circular dependency issues) If you need examples just let me know.

As mentioned on the call, the plugin is brought up via the ApiServer in both fabric and corda cases. Please see: packages/cacti-copm-test/src/main/typescript/corda/copm-tester-corda.ts line 118 packages/cacti-copm-test/src/main/typescript/fabric/copm-tester-fabric.ts line 122

sandeepnRES commented 2 days ago

@jenniferlianne Thank you for the PR, overall looks good to me. Just some small suggestions above I've shared.