-
-
10 Jan 2021 00:52:16 UTC
- Distribution: Config-MVP
- Module version: 2.200012
- Source (raw)
- Browse (raw)
- Changes
- Homepage
- How to Contribute
- Repository
- Issues (7)
- Testers (2737 / 0 / 0)
- Kwalitee
Bus factor: 1- 85.90% Coverage
- License: perl_5
- Activity
24 month- Tools
- Download (33.43KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
++ed by:1 non-PAUSE userand 6 contributors-
Alexandr Ciornii
-
George Hartzell
-
Karen Etheridge
-
Kent Fredric
-
Philippe Bruhat (BooK)
-
Sven Kirmess
- Dependencies
- Class::Load
- Cwd
- File::Spec
- Module::Pluggable::Object
- Moose
- Moose::Role
- Moose::Util::TypeConstraints
- MooseX::OneArgNew
- Params::Util
- Role::HasMessage
- Role::Identifiable::HasIdent
- StackTrace::Auto
- Test::More
- Throwable
- Tie::IxHash
- Try::Tiny
- overload
- strict
- warnings
- Reverse dependencies
- CPAN Testers List
- Dependency graph
NAME
Config::MVP::Reader - object to read config from storage into an assembler
VERSION
version 2.200012
SYNOPSIS
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');
DESCRIPTION
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.
ATTRIBUTES
add_cwd_to_lib
If true (which it is by default) then the current working directly will be locally added to
@INC
during config loading. This helps deal with changes made in Perl v5.26.1.METHODS
read_config
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.Subclasses should generally not override
read_config
, but should instead implement aread_into_assembler
method, described below. If a subclass does overrideread_config
it should take care to respect theadd_cwd_to_lib
attribute, above.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.The default implementation of this method will throw an exception complaining that it should have been implemented by a subclass.
build_assembler
If no Assembler is provided to
read_config
'sassembler
parameter, this method will be called on the Reader to construct one.It must return a Config::MVP::Assembler object, and by default will return an entirely generic one.
AUTHOR
Ricardo Signes <rjbs@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2021 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.
Module Install Instructions
To install Config::MVP, copy and paste the appropriate command in to your terminal.
cpanm Config::MVP
perl -MCPAN -e shell install Config::MVP
For more information on module installation, please visit the detailed CPAN module installation guide.