notitia core runtime & modules
Project description
Notitia core - pluggable payload procesing - everything is famous.. sort of..
import motor.motor_asyncio
from bstk_notitia import Notitia
# An Investigator looks for and specialises in dealing with particular types of cases
# Observers watch for information that may or may not be useful to an investigator
# Informants provide new or supporting information upon request by the investigator
# Reporters are used by the investigator to disseminate information and receive feedback
# Only certain cases get investigated
# The investigator decides what cases to take
# Each case must run to completion, even if completion means new cases are created
motor_client = motor.motor_tornado.AsyncIOMotorClient(host=['localhost:27017'])
notitia = Notita(
department="08e32fd8-9259-4a3e-891a-bc39b7c8ef22", # [str | None] - for tenancy isolation
)
notitia.set_driver(
driver="mongodb"
driver_settings={
"async_client": motor_client,
"database": 'myappdb',
"collection_prefix": "bn_",
"archive_suffix": "_arch",
"completion_action": "immoliate",
},
)
notitia.enlist(investigator="portaone/espf")
espf_payload = {
"event-type": "Test/Event",
"variables": {
"i_event": 1,
"i_account": 999
}
}
# A valid case
try:
case = await notitia.dispatch(
observer="portaone/espf",
information=espf_payload,
completion_action="archive". # [archive | immoliate | None]
)
print(f"Tracking case as {case.number}")
except NotitiaInvalidCasePayloadException as ex:
print(f"Invalid Payload: {ex.message}")
async for movement in notitia.spy(case):
print(f"Case moved {movement.id}")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
bstk_notitia-0.5.2.tar.gz
(22.2 kB
view hashes)
Built Distribution
Close
Hashes for bstk_notitia-0.5.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9775b946f8e596d3cf8a3c11dde647c6edcb0e713b8c25640cd6f71affc878ed |
|
MD5 | 47471a15c2a131a52847574d4f194da1 |
|
BLAKE2b-256 | 6867630683f17df9b5dbe29b64ea162dc4e1f88e336f5b228de932a25f7e2635 |