@x-dome/xdome-extension-rest
v0.1.4
Published
xdome-extension-rest
Downloads
4
Readme
WIP
Folders Details
plugin
These file are intended to be copied to the project (Just once), and are used by the app (support, templates and others if needed)
- @TODO -> Make this part of the add endpoint process (CLI)
support
These files are usually extended by the templates, and are the base share logic for this Extension component, it include
accessPoint.js
: Base logic for route managedment, it include by default:rejects
method, base on the non compliance with theallowedVerbs
attribute.Post BusinessLogic
It aslo include the posibility of override the route declaration with
routesOverride
businessLogic.js
: Common logic / process for this endpoint, it include by default:[get|post|put|delete]InputSchemeValidator(data)
: Intended method for scheme validation (Input data), it will returntrue
by default unlest is overrided. Iffalse
it will shortcircuit the process.Pre Endpoint Process
[get|post|put|delete]OutputSchemeValidator(data)
: Intended method for scheme validation (Output data), it will returntrue
by default unlest is overrided. Iffalse
it will shortcircuit the process.Post Endpoint Process
[get|post|put|delete]InputOverride(data)
: Intended method for data modification / override (Input data), it also set that information tothis.request.dome.input
, from where can be used for other methodsPre Endpoint Process
[get|post|put|delete]OutputOverride(data)
: Intended method for data modification / override (Output data), it also set that information tothis.response.dome.output
, from where can be used for other methodsPost Endpoint Process
[get|post|put|delete]Process()
: Actual process / logic for this endpoint, by default it justreturn { data : "get" };
, this should be overrided with the intended behaviour.[get|post|put|delete]()
: Do not override, this is the orchestrator of the others / prev methods.
templates
These file are copied each time you decide to add a new endpoint, it has the need extensions to use the support files.
accessPoint.js
: Route managedment, itextends
fromsupport/accessPoint
businessLogic.js
: Process execution for the specific endpoint, here can be override most of the default method ofsupport/businessLogic.js
(but no[get|post|put|delete]()
), is also the right place to define other kind of logic related to the endpoint logic