The one Obelisk client to rule them all
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
Construct Additional Obelisks
After years of copy-pasting and modifying Obelisk client implementations all over, we've had enough of hearing "construct additional obelisks". Thus, we have decided to build the one client to rule them all.
Usage
Take your pick of asynchronous or sync, import the relevant Producer or Consumer and go crazy. There is explicitly minimal documentation on actual filter values, read the Obelisk docs for that.
Please never copy the repo into your own project,
rather use pip install construct_addditional_obelisks.
Retry strategies
Construct Additional Obelisks provides first class support for retry behaviours.
These are defined in strategies/retry.py,
we provide NoRetryStrategy, ImmediateRetryStrategy,
and ExponentialBackoffRetryStrategy.
These do exactly what it says on the tin,
when provided in the constructor of your producer, consumer or client,
they will cause the client to retry requests according to the strategy
whenever the response status is not in the 2XX range.
The default strategy is no retry, we do recommend setting at least some form of retry as the token validity behaviour sometimes encounters edge cases.
Async and Sync support
The library has an async and blocking edition.
The async edition is contained in the module asynchronous
due to async being a reserved keyword and invalid package name,
synchronous can be found in sync.
The sync edition is simply a wrapper around asynchronous,
maintaining an own event loop.
HFS and Classic support
All constructors take an optional kind argument,
set this to the appropriate variety for you.
There is no special handling for HFS userId / patientId fields as those are never
directly touched by the library.
The only exception is that Datapoint has explicit support for userId
and allows extra fields to provide naive support for other field names.
Credits
Base implementation originally by Pieter Moens Pieter.Moens@ugent.be, modified by Kyana Bosschaerts Kyana.Bosschaerts@ugent.be and finally consolidated by Stef Pletinck Stef.Pletinck@ugent.be.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file construct_additional_obelisks-0.2.0.tar.gz.
File metadata
- Download URL: construct_additional_obelisks-0.2.0.tar.gz
- Upload date:
- Size: 20.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.30
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a876ffbc816a87a0bacda9c08868c405e20e60b5d4baa05799dce10d8400563
|
|
| MD5 |
53d39c75ea6c5c2b74cd75c7ba36017a
|
|
| BLAKE2b-256 |
ead37a48bdd3170980452be2bd21f7c5e767a7b5ef8e5cc28f11a071eee07686
|
File details
Details for the file construct_additional_obelisks-0.2.0-py3-none-any.whl.
File metadata
- Download URL: construct_additional_obelisks-0.2.0-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.30
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
95e9b7614b0998372d84813eccd058d72200a72c4e13b03c780a7fe008876588
|
|
| MD5 |
babc53c040037fdf1ac42c84d91dbfda
|
|
| BLAKE2b-256 |
85de10b9adb062d9cc4c1bc5d87603c260e275f79551eedabb43796bff579b1f
|