macchina-io / macchina.io

macchina.io EDGE is a powerful C++ and JavaScript SDK for edge devices, multi-service IoT gateways and connected embedded systems.
https://macchina.io
GNU General Public License v3.0
512 stars 152 forks source link

Update URI for OData #116

Closed SDMProjects closed 1 year ago

SDMProjects commented 1 year ago

I update URI files (URI.h and URI.cpp in Poco/Foundation) to implement OData Version 4.01. Part 2: URL Conventions (cf https://www.odata.org/documentation/). I introduce 3 parsing mode : StrictMode to be strictly compliant with RFC 3986, TolerantMode to implement OData URL and DecodeMode (DecodeMode is redundant with plusAsSpace for decoding).

Without these changes, I can't implement OData URL parsing.

aleks-f commented 1 year ago

This should go to poco.

But why the additional parameter for each member function? It seems excessive and not very C++-ish. Why not just have a ParsingMode URI::_mode private member variable?

SDMProjects commented 1 year ago

Hi aleks,

you're right. This is my first pull request.

I can change my code and introduce:

I understand that I must make the pull request on Poco project.

It is ok if i do that ?

aleks-f commented 1 year ago

yes