Introducing Grapi: Generated REST API
I’m pleased to officially announce Grapi today.
Grapi (Generated REST API) is a Java source code generator based on APT (Javac plugin).
As explained on GitHub page, Grapi analyzes your JAX-RS source code and generate some code in order to expose your JAX-RS resources through Netty.
Basically Grapi generates some optimized Java code for ease of use of JAX-RS resources through Netty.
There is no runtime dependency on any JAX-RS provider (actually only a small one on Jersey UriTemplate class which will be removed later on) and Grapi is not a JAX-RS provider.
Grapi avoids the introspection crap and generates Java source code which will work according to the JAX-RS resources. When some JAX-RS features aren’t used, some Java code is dropped from the generated source code in order to both reduce complexity of the generated source code and improve the performance and maintenance of code.
Additionally, Grapi can generate a Dagger module in order to simplify even more the use of the generated code and also use Metrics in order to measure various timings about your JAX-RS resources.
I hope this project will prove as useful to others as it does on some other projects of my own.