mirror of
https://github.com/ets-labs/python-dependency-injector.git
synced 2025-07-11 08:32:26 +03:00
Remove bundles_v2 example
This commit is contained in:
parent
926f716ce6
commit
ec1fd7414c
|
@ -1,8 +0,0 @@
|
||||||
Dependency Injector Bundles example
|
|
||||||
===================================
|
|
||||||
|
|
||||||
Instructions for running
|
|
||||||
|
|
||||||
.. code-block:: bash
|
|
||||||
|
|
||||||
python run.py
|
|
|
@ -1 +0,0 @@
|
||||||
"""Bundles package."""
|
|
|
@ -1,19 +0,0 @@
|
||||||
"""Photos bundle."""
|
|
||||||
|
|
||||||
from dependency_injector import containers
|
|
||||||
from dependency_injector import providers
|
|
||||||
|
|
||||||
from . import entities
|
|
||||||
from . import repositories
|
|
||||||
|
|
||||||
|
|
||||||
class Photos(containers.DeclarativeContainer):
|
|
||||||
"""Photos bundle container."""
|
|
||||||
|
|
||||||
core = providers.DependenciesContainer()
|
|
||||||
|
|
||||||
photo = providers.Factory(entities.Photo)
|
|
||||||
photo_repository = providers.Singleton(repositories.PhotoRepository,
|
|
||||||
object_factory=photo.provider,
|
|
||||||
fs=core.file_storage,
|
|
||||||
db=core.database)
|
|
|
@ -1,5 +0,0 @@
|
||||||
"""Photos bundle entities module."""
|
|
||||||
|
|
||||||
|
|
||||||
class Photo(object):
|
|
||||||
"""Photo entity."""
|
|
|
@ -1,11 +0,0 @@
|
||||||
"""Photos bundle entity repositories module."""
|
|
||||||
|
|
||||||
|
|
||||||
class PhotoRepository(object):
|
|
||||||
"""Photo entity repository."""
|
|
||||||
|
|
||||||
def __init__(self, object_factory, fs, db):
|
|
||||||
"""Initializer."""
|
|
||||||
self.object_factory = object_factory
|
|
||||||
self.fs = fs
|
|
||||||
self.db = db
|
|
|
@ -1,18 +0,0 @@
|
||||||
"""Users bundle."""
|
|
||||||
|
|
||||||
from dependency_injector import containers
|
|
||||||
from dependency_injector import providers
|
|
||||||
|
|
||||||
from . import entities
|
|
||||||
from . import repositories
|
|
||||||
|
|
||||||
|
|
||||||
class Users(containers.DeclarativeContainer):
|
|
||||||
"""Users bundle container."""
|
|
||||||
|
|
||||||
core = providers.DependenciesContainer()
|
|
||||||
|
|
||||||
user = providers.Factory(entities.User)
|
|
||||||
user_repository = providers.Singleton(repositories.UserRepository,
|
|
||||||
object_factory=user.provider,
|
|
||||||
db=core.database)
|
|
|
@ -1,9 +0,0 @@
|
||||||
"""Users bundle entities module."""
|
|
||||||
|
|
||||||
|
|
||||||
class User(object):
|
|
||||||
"""User entity."""
|
|
||||||
|
|
||||||
def __init__(self, id):
|
|
||||||
"""Initializer."""
|
|
||||||
self.id = id
|
|
|
@ -1,14 +0,0 @@
|
||||||
"""Users bundle entity repositories module."""
|
|
||||||
|
|
||||||
|
|
||||||
class UserRepository(object):
|
|
||||||
"""User entity repository."""
|
|
||||||
|
|
||||||
def __init__(self, object_factory, db):
|
|
||||||
"""Initializer."""
|
|
||||||
self.object_factory = object_factory
|
|
||||||
self.db = db
|
|
||||||
|
|
||||||
def get(self, id):
|
|
||||||
"""Return user entity with given identifier."""
|
|
||||||
return self.object_factory(id=id)
|
|
|
@ -1,41 +0,0 @@
|
||||||
"""Run 'Bundles' example application."""
|
|
||||||
|
|
||||||
import sqlite3
|
|
||||||
import boto3
|
|
||||||
|
|
||||||
from dependency_injector import containers
|
|
||||||
from dependency_injector import providers
|
|
||||||
|
|
||||||
from bundles.users import Users
|
|
||||||
from bundles.photos import Photos
|
|
||||||
|
|
||||||
|
|
||||||
class Core(containers.DeclarativeContainer):
|
|
||||||
"""Core container."""
|
|
||||||
|
|
||||||
config = providers.Configuration('config')
|
|
||||||
database = providers.Singleton(sqlite3.connect, config.database.dsn)
|
|
||||||
file_storage = providers.Singleton(
|
|
||||||
boto3.client, 's3',
|
|
||||||
aws_access_key_id=config.aws.access_key_id,
|
|
||||||
aws_secret_access_key=config.aws.secret_access_key)
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
# Initializing containers
|
|
||||||
core = Core()
|
|
||||||
core.config.update({'database': {'dsn': ':memory:'},
|
|
||||||
'aws': {'access_key_id': 'KEY',
|
|
||||||
'secret_access_key': 'SECRET'}})
|
|
||||||
users = Users(core=core)
|
|
||||||
photos = Photos(core=core)
|
|
||||||
|
|
||||||
# Fetching few users
|
|
||||||
user_repository = users.user_repository()
|
|
||||||
user1 = user_repository.get(id=1)
|
|
||||||
user2 = user_repository.get(id=2)
|
|
||||||
|
|
||||||
# Making some checks
|
|
||||||
assert user1.id == 1
|
|
||||||
assert user2.id == 2
|
|
||||||
assert user_repository.db is core.database()
|
|
Loading…
Reference in New Issue
Block a user