NAME

IOC::Visitor::ServiceLocator - Service locator Visitor for the IOC::Container hierarchies

SYNOPSIS

use IOC::Visitor::ServiceLocator;

# given a $container, ...

# find services within $container
my $visitor = IOC::Visitor::ServiceLocator->new('connection');

# find services relative to $container
my $visitor = IOC::Visitor::ServiceLocator->new('../connection');

# find services from $container's root  
my $visitor = IOC::Visitor::ServiceLocator->new('/database/connection');

$container->accept($visitor);

DESCRIPTION

This is a IOC::Visitor object, used by the IOC::Container's find method to locate a service using a path syntax.

     +------------------+
     | <<IOC::Visitor>> |
     +------------------+
              |
              ^
              |
+------------------------------+
| IOC::Visitor::ServiceLocator |
+------------------------------+

METHODS

new ($path)

Creates a new instance which will find Services at a given $path. If no $path is given, than an IOC::InsufficientArguments exception is thrown.

visit ($container)

Given a $container, the invocant will attempt to locate the service at the $path (given to the constuctor) from within the $container.

TO DO

Work on the documentation

BUGS

None that I am aware of. Of course, if you find a bug, let me know, and I will be sure to fix it.

CODE COVERAGE

I use Devel::Cover to test the code coverage of my tests, see the CODE COVERAGE section of IOC for more information.

SEE ALSO

AUTHOR

stevan little, <stevan@iinteractive.com>

COPYRIGHT AND LICENSE

Copyright 2004-2007 by Infinity Interactive, Inc.

http://www.iinteractive.com

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.