Open yoh1496 opened 3 years ago
I think it would be nice if I can write Engine Script Handler as module.
For example,
const { something } = require("./submodule"); exports.handler = function(request) { const result = something.do(); return { status: 200, headers: {"Content-Type": "application/json"}, body: [ JSON.stringify(result)], }; };
Current part of calling function is below.
https://github.com/personium/personium-engine/blob/develop/src/main/java/io/personium/engine/PersoniumEngineContext.java#L367
Object fObj = scope.get("fn_jsgi", scope); Object result = null; if (!(fObj instanceof Function)) { log.warn("fn_jsgi not found"); throw new PersoniumEngineException("Server Error", PersoniumEngineException.STATUSCODE_SERVER_ERROR); } Object[] functionArgs = {jsReq.getRequestObject() }; previousPhaseTime = System.currentTimeMillis(); Function f = (Function) fObj; result = f.call(cx, scope, scope, functionArgs);
I think this issue could be solved with modifing here with below steps.
loadedmodule.handler
Merits
the handle function must be written on first place
Demerits
How is this?
I think it would be nice if I can write Engine Script Handler as module.
For example,
Current part of calling function is below.
https://github.com/personium/personium-engine/blob/develop/src/main/java/io/personium/engine/PersoniumEngineContext.java#L367
I think this issue could be solved with modifing here with below steps.
loadedmodule.handler
Merits
The script which is written in module style can be import easily from local.
the handle function must be written on first place
Demerits
How is this?