elasticio / odata2openapi

OData to OpenAPI Converter
https://www.elastic.io
MIT License
33 stars 23 forks source link

Support for SAP annotations for OData v2 #34

Closed elsewhat closed 1 year ago

elsewhat commented 6 years ago

http://www.sap.com/Protocols/SAPData

SAP is using OData heavily for exposing APIs. For OData v2, SAP has provided their own extensions. For OData v4 these extensions are mostly added to the Oasis standard.

Features support include: -Detect SAP specific additions based on xmlNamespace -Define operations based on EntitySet sap metadata (creatable, updatable etc) -Include user friendly description pr property -FunctionImport support -List out expandable properties

In addition, added optional Options.schemes and Options.title properties.

jhorbulyk commented 6 years ago

Are the SAP defnitions the same as the ones adapted in Odata v4 or are they different?

elsewhat commented 6 years ago

For OData v2 SAP has provided an additional namespace xmlns:sap="http://www.sap.com/Protocols/SAPData"

Don't think there is a one-to-one match with changes in OData v4 possible.

There is a mapping from SAP showing the differences how various features in OData v2 is realized in OData v4 https://sapui5.hana.ondemand.com/1.36.6/docs/guide/341823349ed04df1813197f2a0d71db2.html

Tried to isolate so that the new logic only occurs if the namespace is provided, but was not always straightforward with out significant refactoring

elsewhat commented 5 years ago

Any update on this pull request?

jhorbulyk commented 5 years ago

@elsewhat Sorry. I had forgotten about this. I don't have an SAP instance which supports the above metadata formats so I can't test those directly but I suppose that I can make sure that the changes don't regress anyting and then publish a new version of the package. Does that work for you?

elsewhat commented 5 years ago

Works for me :)

jhorbulyk commented 5 years ago

I just checked with my company's management about whether there is any requirement that you (@elsewhat ) need to sign a contributor license agreement (CLA). They have told me that the answer to this question is yes. However, unfortunately, they don't have such an agreement in place at this time but they are working to put this in place in the future. This unfortunately means that I can't merge this PR at this time but I can come back to you once this infrastructure is put in place.

snebjorn commented 5 years ago

@jhorbulyk what's the progress on this? I really could use this :)

jhorbulyk commented 5 years ago

@jhorbulyk what's the progress on this? I really could use this :)

@snebjorn Update is that I need @elsewhat to sign the cla. @elsewhat are you willing to do this?

CLAassistant commented 5 years ago

CLA assistant check
All committers have signed the CLA.

elsewhat commented 3 years ago

sorry, didn't catch the notification on this issue. Signed cla now

nrdev88 commented 3 years ago

I could really use this. @elsewhat, could you please update the conflicts.

elsewhat commented 3 years ago

@nrdev88 have resolved the conflicts, but not able to verify the functionality at the moment. Could you see if it fits your need ?