This handler is part of the light-rest-4j which is built on top of light-4j but
focused on RESTful API only. Also, it only works with OpenAPI 3.0 specification.
It is designed based on OpenAPI specification so it is our best interest to utilize
the openapi.json to its full potential. Currently there are two components are using
the OpenAPI specification during runtime.
openapi-security - Verify scope in the JWT token against scope defined in OpenAPI specification if scope verification is true.
openapi-validator - Validate request and response based on the definition in OpenAPI specification for the uri and method.
As you have noticed, both components need to have OpenAPI operation available
based on the current request uri and method combination.
A specification file openapi.json should be in the config folder of your API
implementation and it will be loaded to memory with OpenApiHelper during server
start up. It will be cached in memory until the server is restarted.
In order to match the incoming request path to the paths defined in the OpenAPI
specification, all paths are normalized before matching action. OpenApiHelper
provides an API to match the request path to the paths in OpenAPI specification.
This is an HttpHandler to parse the OpenAPI spec based on the request uri and
method and attach an OpenApiOperation object to the exchange. The openapi-security
and openapi-validator modules are using it to do their jobs without parsing the
openapi.json second time.