module d_webservice_example.component_registration; import aermicioi.aedi; void registerComponents(ConfigurableContainer container) @safe { import d_webservice_example.business.todo_notification_service : TodoNotificationService; import d_webservice_example.business.todo_service : TodoRepository, TodoService; import d_webservice_example.controller.todo_controller : TodoController; import d_webservice_example.controller.todo_notification_controller : TodoNotificationController; import d_webservice_example.dataaccess.in_memory_todo_repository : InMemoryTodoRepository; import d_webservice_example.facade.todo_facade : TodoFacade; with (container.configure) { register!TodoService.autowire; register!TodoNotificationService.autowire; register!TodoController.autowire; register!TodoNotificationController.autowire; register!(TodoRepository, InMemoryTodoRepository).autowire; register!TodoFacade.autowire; } }