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);
}
};