view lib/IMPL/Config/Container.pm @ 410:9335cf010b23 ref20150831

refactoring
author cin
date Mon, 14 Sep 2015 01:11:53 +0300
parents c6e90e02dd17
children 30e8c6a74937
line wrap: on
line source

package IMPL::Config::Container;

1;

__END__

=pod

=head1 NAME

C<IMPL::Config::Container> - dependency injection container

=head1 SYNOPSIS

=head2 METHODS

=head3 GetService($serviceId)

=over

=item * $serviceId

A string indetifier of the service, it can be in two forms: class name or service name,
for the class name it should be prefixed with C<@>, for example: C<@Foo::Bar>.

=back

The activation container maintains two maps, one for classes and the other for names.
The first one is useful when we searching for an implementation the second one when
we need a particular service. 

=head3 RegisterService($descriptor)

=cut