All REST API endpoints are provided by the
RestAPIVerticle which as the name suggests is a Vert.x Verticle.
Verticles are deployment units which are registered by Vert.x and contain application code.
Gentics Mesh only uses a few verticles one of which is the RestAPIVerticle.
Verticles are not used to modularize or extend the REST API.
RestAPIVerticle will setup the actual Http server which accepts the requests and use Vert.x Routers to process the Http request and direct it to the registered endpoints.
RouterStorage is the main class which manages all the REST API routes. A storage will be assigned to each
The storage is used organize routes by its purpose and to also make routes re-usable.
There are for example core routes (e.g. /api/v2/users) and project specific routes (e.g. /api/v2/:projectName/nodes).
RestAPIVerticle pulls Endpoints from various Endpoint classes like
Each of those Endpoint classes will be assigned a dedicated router to which the
EndpointRoutes can be registered.
These in turn handle the actual Http request.
How a request is being processed will be described in the next section.