oasis-open / odata-rapid

Rapid - Specification, tools and libraries to support the development and adoption of simple REST-based APIs.
https://rapid.rocks
Apache License 2.0
17 stars 8 forks source link

Add support for Capability Introspection to GraphQL Mesh OData Handler #302

Open mikepizzo opened 2 years ago

mikepizzo commented 2 years ago

GraphQL Mesh OData Handler currently assumes all paths implied by the $metadata are supported.

It has logic to inject $expand in order to span relationships, but that is disabled by default because it is not supported in many places.

The GraphQL Mesh OData Handler would be much more reliable and performant if it used the capabilities advertised by an OData/RAPID service both to limit the functionality exposed and to optimize what logic (like $expand) it could push to the store.