From bb96267f6841941a9359727640612bdd3cac22e3 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Sat, 16 Apr 2011 11:00:06 -0500 Subject: need to make sure we pass along all of the service attributes --- lib/Bread/Board/Declare/Role/Object.pm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'lib/Bread/Board/Declare') 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); -- cgit v1.2.3