[ 
https://issues.apache.org/jira/browse/CALCITE-7300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047515#comment-18047515
 ] 

Oleg Alekseev edited comment on CALCITE-7300 at 12/25/25 12:36 PM:
-------------------------------------------------------------------

I'm pleased to share an update: a new major version (v2) has been developed, 
which addresses many of the considerations discussed in our community feedback.

CalciteRestAPIAdapter v2 - Major Release
Repository: https://github.com/oalekseev/CalciteRestAPIAdapter-v2

Key Improvements in v2:
Configuration & Schema Discovery

OpenAPI-based configuration instead of XML - automatically discovers REST API 
schemas without manual field definitions

FreeMarker templates for flexible HTTP request customization (body, headers, 
URL parameters)

Supports complex nested structures and format transformations (JSON, XML, CSV)

Advanced Filtering & Query Optimization

DNF/CNF filter support - converts SQL WHERE clauses to Disjunctive/Conjunctive 
Normal Form for efficient REST API filtering

Query pushdown - sends filtered data requests directly to REST services, 
reducing data transfer

Comprehensive Test Coverage: 13 test classes with 50+ test methods covering:

- Projection pushdown optimization
- 
- Pagination handling with automatic page fetching
- 
- SQL JOIN operations (INNER, SELF, CROSS)
- 
- Multiple REST API filter specification variants (DNF/CNF)
- 
- Nested JSON/XML structure flattening
- 
- Dynamic request headers with FreeMarker templates
- 
- CSV, JSON, and XML response parsing
- 
- Request-only and Response-only parameter handling
- 
- Type mappings for SQL column types
- 
- URL query parameter generation

Oleg Alekseev
GitHub: @oalekseev
Telegram: @oalekseevdev
E-mail: [email protected]


was (Author: JIRAUSER305374):
The adapter is publicly available on GitHub
https://github.com/oalekseev/CalciteRestAPIAdapter-v2

> Proposal to contribute CalciteRestAPIAdapter
> --------------------------------------------
>
>                 Key: CALCITE-7300
>                 URL: https://issues.apache.org/jira/browse/CALCITE-7300
>             Project: Calcite
>          Issue Type: New Feature
>            Reporter: Oleg Alekseev
>            Priority: Minor
>
> First version
> The adapter is publicly available on GitHub: 
> [https://github.com/oalekseev/CalciteRestAPIAdapter]
> What should be added:
>  * Dealing with the format of the data that comes back (csv, xml, json) 
>  * Javadoc, tests, and user doc
>  * Consider support for OpenAPI specifications in the future, as it could 
> help unify and automate integration with a wide range of REST services
> Proposal to contribute here
> https://lists.apache.org/thread/jvbpz7rp7w76gqmshtz3y6bhcftk41c5



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to