32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
from cpl import auth
|
|
from cpl.application.abc.startup_abc import StartupABC
|
|
from cpl.auth import permission
|
|
from cpl.core.configuration import Configuration
|
|
from cpl.core.environment import Environment
|
|
from cpl.core.log import Logger, LoggerABC
|
|
from cpl.database import mysql
|
|
from cpl.database.abc.data_access_object_abc import DataAccessObjectABC
|
|
from cpl.dependency import ServiceCollection
|
|
from model.city_dao import CityDao
|
|
from model.user_dao import UserDao
|
|
|
|
|
|
class Startup(StartupABC):
|
|
|
|
@staticmethod
|
|
async def configure_configuration():
|
|
Configuration.add_json_file(f"appsettings.json")
|
|
Configuration.add_json_file(f"appsettings.{Environment.get_environment()}.json")
|
|
Configuration.add_json_file(f"appsettings.{Environment.get_host_name()}.json", optional=True)
|
|
|
|
@staticmethod
|
|
async def configure_services(services: ServiceCollection):
|
|
services.add_module(mysql)
|
|
services.add_module(auth)
|
|
services.add_module(permission)
|
|
|
|
services.add_transient(DataAccessObjectABC, UserDao)
|
|
services.add_transient(DataAccessObjectABC, CityDao)
|
|
|
|
services.add_singleton(LoggerABC, Logger)
|