diff options
Diffstat (limited to 'lib/boot/bootstrap_container.rb')
| -rw-r--r-- | lib/boot/bootstrap_container.rb | 43 |
1 files changed, 25 insertions, 18 deletions
diff --git a/lib/boot/bootstrap_container.rb b/lib/boot/bootstrap_container.rb index ed4eed0..93b3892 100644 --- a/lib/boot/bootstrap_container.rb +++ b/lib/boot/bootstrap_container.rb @@ -6,29 +6,36 @@ class BootstrapContainer @container = container end def run + configuration = Humble::Configuration.new(DatabaseConfiguration.new.connection_string) + configuration.add(UserMapping.new) + configuration.add(ProductMapping.new) + session_factory = configuration.build_session_factory + @container.register(:command_registry) { Booty::RouteRegistry.new }.as_singleton @container.register(:front_controller) { @container.build(Booty::FrontController) } @container.register(:view_engine) do Booty::ViewEngine.new(:root_path => 'lib/commands', :master => 'master') end @container.register(:products_repository) do - Repository.new(:products, @container.resolve(:database_gateway), DataMapper.new(Product)) + #Repository.new(:products, @container.resolve(:database_gateway), DataMapper.new(Product)) + HumbleRepository.new(@container.resolve(:context).item_for(@container.resolve(:key)), Product) end @container.register(:users_repository) do - Repository.new(:users, @container.resolve(:database_gateway), DataMapper.new(User)) - end - @container.register(:database_gateway) do - @container.build(DatabaseGateway) - end - @container.register(:database_connection_factory) do - DatabaseConnectionFactory.new(@container.resolve(:database_configuration), @container.resolve(:database_connection_provider)) - end - @container.register(:database_configuration) do - DatabaseConfiguration.new - end - @container.register(:database_connection_provider) do - SequelConnectionProvider.new - end + #Repository.new(:users, @container.resolve(:database_gateway), DataMapper.new(User)) + HumbleRepository.new(@container.resolve(:context).item_for(@container.resolve(:key)), User) + end + #@container.register(:database_gateway) do + #@container.build(DatabaseGateway) + #end + #@container.register(:database_connection_factory) do + #DatabaseConnectionFactory.new(@container.resolve(:database_configuration), @container.resolve(:database_connection_provider)) + #end + #@container.register(:database_configuration) do + #DatabaseConfiguration.new + #end + #@container.register(:database_connection_provider) do + #SequelConnectionProvider.new + #end @container.register(:unit_of_work_interceptor) do @container.build(UnitOfWorkInterceptor) end @@ -40,11 +47,11 @@ class BootstrapContainer SimpleContext.new end.as_singleton @container.register(:session_factory) do - @container.build(SessionFactory) - end + session_factory + end.as_singleton @container.register(:key) do Key.new("database.session") - end + end.as_singleton @container.register(:current_user_interceptor) do @container.build(CurrentUserInterceptor) end |
