"transaction" Process Function Defined in JS

Q

How to define a "transaction" process function in the JS scripting file?

✍: FYIcenter.com

A

If you want your Hyplerledger Composer business network to process a business transaction, you need to the "function" JavaScript statement to define a "transaction" process function in a JS scripting file.

When Hyplerledger Composer runtime receives a business transaction, it will automatically parse the transaction request input message into an JavaScript data object based on the given "transaction" data type.

Then Hyplerledger Composer runtime invokes the "transaction" process function provided in the JavaScript file to process the transaction data object.

Here is an example of a JS file , lib/hello.js: that defines transaction process function called "Hello", which will process the transaction data object, named as "req", passed from the Hyplerledger Composer runtime:

/* Copyright (c) FYIcenter.com
 */

/* @transaction
 * @param {com.fyicenter.hyperledger.hello.Hello} req
 */
function helloHandler(req) {
  console.log("Hello "+req.name+"!");
}

Note that:

  • "@transaction" decoration is required to indicate that the following function is a "transaction" process function.
  • "@param" decoration is required to specify which "transaction" data type of objects this function will process.
  • "console.log()" is a built-in function what allow you to print a text message in the Hyperledger Fabric server console.

 

⇒ View "console.log()" Output in Playground

⇐ "transaction" Data Type Declared in CTO

⇑ Business Network JS Scripting Language

⇑⇑ Hyperledger Composer Tutorials

2021-06-05, 421👍, 0💬