async function handler()

in ngo-lambda/src/index.js [82:115]


async function handler(event, context, callback) {
    let functionType = event.functionType;
    let handlerFunction;

    if (functionType == "queryString") {
      handlerFunction = queryStringHandler;
    } else if (functionType == "queryArray") {
      handlerFunction = queryArrayHandler;
    } else if (functionType == "queryObject") {
      handlerFunction = queryObjectHandler;
    } else if (functionType == "invoke") {
      handlerFunction = invokeHandler;
    } else if (functionType == "queryEvents") {
      handlerFunction = queryEventsHandler;
    } else {
      throw new Error("functionType must be of type 'queryString', 'queryArray', 'queryObject', 'queryEvents' or 'invoke'");
    }

    config["fabricUsername"] = event.fabricUsername;

    try {
      if (functionType == "queryEvents") {
        let result = await handlerFunction(event.transactionId);
        callback(null, result);
      } else {
        let result = await chaincodeTransactionHandler(event, handlerFunction);
        callback(null, result);
      }
    } catch (err) {
      logger.error("Error in Lambda Fabric handler: ", err);
      let returnMessage = err.message || err;
      callback(returnMessage);
    }
};