NAME
Bread::Board::LazyLoader::Site - loads tree of IOC files alongside pm file
VERSION
version 0.14
SYNOPSIS
In module dir we have files, each one containing the definition of one Bread::Board::Container
lib/My/Site/Supp/Database.ioc
lib/My/Site/Root.ioc
lib/My/Site/Config.ioc
lib/My/Site/Database.ioc
lib/My/Site/Planner.ioc
lib/My/Site/AQ.ioc
the "site" module lib/My/Site.pm
is defined like
package My::Site;
use strict;
use warnings;
use Bread::Board::LazyLoader::Site;
1;
in the script
use My::Site;
my $root = My::Site->root;
my $db_container = $root->fetch('Database');
my $dbh = $root->resolve(service => 'Database/dbh');
DESCRIPTION
Site module is a module with a class method root
returning an instance of Bread::Board::Container
.
Bread::Board::LazyLoader::Site
just imports such root
method.
import parameters
use Bread::Board::LazyLoader::Site %params;
- dir
-
Directory searched for container files. By default it is the directory with the same name as module file without suffix.
- suffix
-
Suffix of container files. By default
ioc
. - base
-
Another site module. All container files are loaded on top of the base file containers.
AUTHOR
Roman Daniel <roman@daniel.cz>
COPYRIGHT AND LICENSE
This software is copyright (c) 2016 by Roman Daniel.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.