Onion Model in Python
Project description
Compose4py
Onion Model in Python. Pyton 洋葱模型
pip install compose4py
Installation
Usage
Import compose4py
:
from compose4py import Compose
All the usual function composition you know and love:
def mw_1(ctx, loader_context):
print("mw_1: %s" % ctx)
print("mw_1 loader_context: %s" % loader_context)
ctx += ":mw1"
# call the next middleware and waiting the new ctx
ctx = yield ctx
# use the latest ctx and process more logic
ctx += ":post_mw1"
return ctx
def mw_2(ctx):
print("mw_2: %s" % ctx)
ctx += ":mw2"
ctx = yield ctx
ctx += ":post_mw2"
return ctx
def mw_3(ctx):
print("mw_3: %s" % ctx)
ctx += ":mw3"
return ctx
compose = Compose(mw_1, mw_2, mw_3, loader_context = {"foo": "bar"})
result = compose("foo")
print("final: %s" % result)
# final: foo:mw1:mw2:mw3:post_mw2:post_mw1
Give credits to
开源许可协议
Copyright (2018-2020) 北京华夏春松科技有限公司
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
compose4py-1.3.3.tar.gz
(5.6 kB
view details)
Built Distribution
File details
Details for the file compose4py-1.3.3.tar.gz
.
File metadata
- Download URL: compose4py-1.3.3.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.20.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16a966aa33024d63afff6dcb7da107634d1945fbe8f12d418008f66e0509bfdc |
|
MD5 | fcfa32d2dbfd7ebfd0742985bda7373c |
|
BLAKE2b-256 | 1055fb9a20cfc5a1f413101ba53a8120308cdacf39a03bead973b788ef0c76fd |
File details
Details for the file compose4py-1.3.3-py3-none-any.whl
.
File metadata
- Download URL: compose4py-1.3.3-py3-none-any.whl
- Upload date:
- Size: 7.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.20.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a79f2822a7d474050c9ebf5f337f43969ef46af88e9f4d50d82a7e4862260472 |
|
MD5 | a456ae68161b4aa769be8f1aabebaec0 |
|
BLAKE2b-256 | 42696bc35e257659ea25f67642f5c749aab0a5fe371740ead02b2c2c6bb9d363 |