Config::MVP::Reader - object to read config from storage into an assembler
version 2.200010
use Config::MVP::Reader::YAML; # this doesn't really exist my $reader = Config::MVP::Reader::YAML->new; my $sequence = $reader->read_config('/etc/foobar.yml');
A Config::MVP::Reader exists to read configuration data from storage (like a file) and convert that data into instructions to a Config::MVP::Assembler, which will in turn convert them into a Config::MVP::Sequence, the final product.
my $sequence = $reader->read_config($location, \%arg);
This method is passed a location, which has no set meaning, but should be the mechanism by which the Reader is told how to locate configuration. It might be a file name, a hashref of parameters, a DBH, or anything else, depending on the needs of the specific Reader subclass.
It is also passed a hashref of arguments, of which there is only one valid argument:
assembler - the Assembler object into which to read the config
If no assembler argument is passed, one will be constructed by calling the Reader's build_assembler method.
build_assembler
Subclasses should generally not override read_config, but should instead implement a read_into_assembler method, described below.
read_config
read_into_assembler
This method should not be called directly. It is called by read_config with the following parameters:
my $sequence = $reader->read_into_assembler( $location, $assembler );
The method should read the configuration found at $location and use it to instruct the $assembler (a Config::MVP::Assembler) what configuration to perform.
$location
$assembler
The default implementation of this method will throw an exception complaining that it should have been implemented by a subclass.
If no Assembler is provided to read_config's assembler parameter, this method will be called on the Reader to construct one.
assembler
It must return a Config::MVP::Assembler object, and by default will return an entirely generic one.
Ricardo Signes <rjbs@cpan.org>
This software is copyright (c) 2015 by Ricardo Signes.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Config::MVP, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Config::MVP
CPAN shell
perl -MCPAN -e shell install Config::MVP
For more information on module installation, please visit the detailed CPAN module installation guide.