Skip to main content

Dependency injection / inversion of control

Project description

di-ioc

Inversion of control / dependency injection for python

TODO:

  • Add AbstractLifetime class for singleton and scoped lifetimes
  • Use ServiceRequest as the key to retrieve a service instead of just a type
    • This would change AbstractServiceProvider, AbstractServiceContainer, ServiceFactory to accept a ServiceRequest object that defines what service needs to be returned. It still allows for retrieving based on a type, but also allows for more complex resolving needs.
    • Maybe add a Resolver layer inside the ServiceProvider that takes the request and ChainMap of service factories to resolve the requested service. It could be customized by user if needed.

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

di_ioc-0.0.5.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

di_ioc-0.0.5-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file di_ioc-0.0.5.tar.gz.

File metadata

  • Download URL: di_ioc-0.0.5.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.23.0

File hashes

Hashes for di_ioc-0.0.5.tar.gz
Algorithm Hash digest
SHA256 48f79cef4aea73de3fb04400d3c53ebc686f9ac8776920927603fa58bcb61eea
MD5 cc5cd59277f25e9ac97720baf9664d20
BLAKE2b-256 53b72dd41e12b40e9b1fae10f7936abb81f98f0abdd50993a8cb069691d6ba25

See more details on using hashes here.

File details

Details for the file di_ioc-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: di_ioc-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.23.0

File hashes

Hashes for di_ioc-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 7e28e3920b3d4f90ce33cbd1991885d38213cccc34fcb7855e85fc8ec31be9e6
MD5 12be92234e82a55d21b346bb7ee5e6af
BLAKE2b-256 67b27173802c58613d0d87bf4c074db26e34561e770768cde4f3d1486aea429d

See more details on using hashes here.

Supported by

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