Skip to main content

Pretty printer for OData filter expressions

Project description

odata-pretty-printer

Pretty printer for OData filter expressions.

This is an example of using oppen-pretty-print to create a pretty-printer for OData filter expressions.

This is not a robust program, just a bench tool that's used occasionally to pretty-print complex OData filters that would otherwise be unreadable. The input filter is expected to be grammatically correct, just untidy. Pretty error reporting is non-existent!

Usage

pip install odata-pretty-printer

odata-printer  "ShowOnSite eq true and PublicationDate le 2020-04-29T08:49:33Z \
                and PublicationDate ge 2019-04-29T08:49:33Z and ChannelId eq 23 \
                and (ExpiryDate eq null or ExpiryDate ge 2020-04-29T08:49:33Z) and \
                IsAdvisor eq true and (FundCodeList/any(fundcode: fundcode eq 'ITSMT') \
                or SectorCodeList/any(sectorcode: sectorcode eq 'T:IG') \
                or GroupCodeList/any(groupcode: groupcode eq 'BAIL'))"

odata-printer -f tmp/filter_example.txt  

Output:

ShowOnSite eq true
  and PublicationDate le 2020-04-29T08:49:33Z
  and PublicationDate ge 2019-04-29T08:49:33Z
  and ChannelId eq 23
  and (ExpiryDate eq null or ExpiryDate ge 2020-04-29T08:49:33Z)
  and IsAdvisor eq true
  and (FundCodeList/any(fundcode: fundcode eq 'ITSMT')
        or SectorCodeList/any(sectorcode: sectorcode eq 'T:IG')
        or GroupCodeList/any(groupcode: groupcode eq 'BAIL'))

Documentation

Head over to the README for more details.

Contributing

The source code for odata-pretty-printer is available on GitHub. If you find a bug or something is unclear, we encourage you to raise an issue. We also welcome contributions, to contribute, fork the repository and open a pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

odata-pretty-printer-0.1.1.tar.gz (6.9 kB view details)

Uploaded Source

File details

Details for the file odata-pretty-printer-0.1.1.tar.gz.

File metadata

  • Download URL: odata-pretty-printer-0.1.1.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.3.1.post20200515 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for odata-pretty-printer-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e4e8a0b8547190003e35e875a4397c64a719961d53a4d3a4be8d64a4854ff726
MD5 76f07a01067e7ec7da0db97def073dee
BLAKE2b-256 d780ec55bf48c842e0a6e02088e94250eb4071701ae2a803b72e4f23154f9464

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page