diff options
Diffstat (limited to 'lib/Bread/Board/Declare')
-rw-r--r-- | lib/Bread/Board/Declare/Role/Object.pm | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/Bread/Board/Declare/Role/Object.pm b/lib/Bread/Board/Declare/Role/Object.pm index 6ea4d91..8c8b68e 100644 --- a/lib/Bread/Board/Declare/Role/Object.pm +++ b/lib/Bread/Board/Declare/Role/Object.pm @@ -29,8 +29,14 @@ after BUILD => sub { && (my $meta = Class::MOP::class_of($service->class))) { my $inferred = Bread::Board::Service::Inferred->new( current_container => $self, + # XXX: this is kinda ugly, maybe ::Inferred should be able to + # also take a 'prototype' service, rather than just args? service_args => { - dependencies => $service->dependencies, + constructor_name => $service->constructor_name, + dependencies => $service->dependencies, + $service->lifecycle + ? (lifecycle => $service->lifecycle) + : (), }, )->infer_service($service->class); |