Builder for a service host.
Project description
DNRY-SrvHost-Builder
A library for building a long running service in python.
This library is inspired by ASPNETCORE. This package provides a set of classes and interfaces that simplify the initialization of a service by integrating configuration management from dnry.config and container based dependency injection using pyioc3.
This library was intended as a platform on which to create long-running services and reduce boiler plate code. You can create your own service host use one from the DNRY.SrvHost library.
Quick Start
Install dnry-srvhost-builder
pip install dnry-srvhost-builder
Create your own own service host
from dnry.srvhost.builder import SrvHostBase
class AppHost(SrvHostBase):
def run(self, *args, **kwargs):
print('Do something cool!')
Build your program
from dnry.config import IConfigFactory
from dnry.srvhost.builder import SrvHostBuilder, ISrvHostContext, ISrvHost
from pyioc3 import StaticContainerBuilder
def setup_config(ctx: ISrvHostContext, conf: IConfigFactory):
# Add configuration files here
pass
def setup_services(ctx: ISrvHostContext, services: StaticContainerBuilder):
services.bind(
annotation=ISrvHost,
implementation=AppHost)
if __name__ == "__main__":
SrvHostBuilder("App") \
.config_configuration(setup_config) \
.config_services(setup_services) \
.build() \
.run()
That's it! You are ready to build something cool. You can do much more
How What?
in setup_service and setup_config. For information on how to use the
IConfigFactory, see the documentation at en0/dnry-config.
For more information on how to use StaticContainerBuilder, see the
documentation at en0/pyioc3.
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
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 dnry_srvhost-builder-0.2.0.tar.gz.
File metadata
- Download URL: dnry_srvhost-builder-0.2.0.tar.gz
- Upload date:
- Size: 4.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f00e5e8c9fc270b5031a269969882f41413fafb87f8e750a7a8568b683100ee9
|
|
| MD5 |
84c72ad38c5fc2a3d1bd51da7aefbdde
|
|
| BLAKE2b-256 |
be4689ebcf722bcb589c9211836f8c143bc7552ed68ffcd8202e2ac72d60872e
|
File details
Details for the file dnry_srvhost_builder-0.2.0-py3-none-any.whl.
File metadata
- Download URL: dnry_srvhost_builder-0.2.0-py3-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc867ecc3e7b572029bd0604376e48732c83830c3491f4716c238d1efc5f203d
|
|
| MD5 |
8e8da372adda321e2ffd58109f8983e5
|
|
| BLAKE2b-256 |
34b46f29b28cd858a43c7d9e83b4dbb73ef6d11e2cf00bf6c0abfc9c65951feb
|