Case Studies
Swagger / OpenAPI GeoJSON support in REST API endpoints utilizing generated EMF model code
Researched and developed solutions for problems arising in projects where Swagger / OpenAPI GeoJSON support in REST API endpoints utilizing generated EMF model code is required. Problems included: lack of configuration options, missing features, as well as usage of generated EMF model code, which prevents utilization of Swagger Annotations.
Technology stack
- Java 11
- EMF ( Eclipse Modeling Framework )
- Eclipse MMT / QVTO
- Gecko
- Gecko EMF
- Gecko EMF Utilties
- Gecko EMF Persistence
- Gecko Search
- Swagger
- Swagger Annotations
- Swagger JAX-RS
- Swagger Gradle Plugin
- OpenAPI Generator
- Java RESTful Web Services (JAX-RS)
- JSON
- Apache Felix
- Eclipse Jetty 9
- OSGi 7
- Junit
- BND 6.3.1
- Gradle 6.6.1
- MongoDB
- Docker Compose
- Bash
- Dart
- Flutter
Industry
IT
More information
- Issues
- Mechanism to pass down custom Java annotations to code generated off EMF Ecore ( Issue #27 ): https://github.com/eclipse-emf/org.eclipse.emf/issues/27
- Lack of configuration option in ‘Swagger Gradle Plugin’, which allows to include additional models ( Issue #4598 ): https://github.com/swagger-api/swagger-core/issues/4598
- Lack of configuration option in ‘Swagger Gradle Plugin’, which allows to specify discriminator and discriminator mapping ( Issue #4599 ): https://github.com/swagger-api/swagger-core/issues/4599
- Forced lower-casing of some property names in generated OpenAPI spec ( Issue #4600 ): https://github.com/swagger-api/swagger-core/issues/4600
- OpenAPI spec generated via latest version of ‘Swagger Gradle Plugin’ is not compatible with latest OpenAPI Generator CLI ( Issue #4601 ): https://github.com/swagger-api/swagger-core/issues/4601
- Lack of configuration option to “rename” incompatible model names in
dart-dio
generator ( Issue #17677 ): https://github.com/OpenAPITools/openapi-generator/issues/17677 - Lack of configuration option to “rename” incompatible model names in
k6
generator ( Issue #17678 ); https://github.com/OpenAPITools/openapi-generator/issues/17678 - Lack of configuration option to skip unused models ( Issue #17679 ): https://github.com/OpenAPITools/openapi-generator/issues/17679
-
Swagger: https://swagger.io/
-
OpenAPI Generator: https://openapi-generator.tech/
- GeoJSON: https://geojson.org/