NAME
Perlanet::Role::Config - A role to be used in Perlanet traits that read config.
SYNOPSIS
package Perlanet::Trait::MyConfig;
use Moose::Role;
with 'Perlanet::Role::Config';
# Class method to return the config
sub get_config_from_somewhere {
my $class = shift;
# get_config() is defined in this role
return $class->get_config(@_)
}
# get_config() calls this to actually read the config.
sub read_config {
my $class = shift;
my %params = @_;
my $cfg = ...;
return $cfg;
}
DESCRIPTION
A role that is used to build Perlanet traits which read config information from various sources.
This role does two things:
It exposes a method called
get_config()
which gets the raw config data (using yourread_config()
method).It forces your trait to define a method called
read_config()
which actually reads the config and returns it as a hash reference.
METHODS
get_config
Calls your read_config()
method to actually get the config data (as a hash reference) and then munges that data in various ways to get a useful config hash.
THIRTY_DAYS
Constant to define the default cache expiration time in seconds.
AUTHOR
Dave Cross, <dave@perlhacks.com>
COPYRIGHT AND LICENSE
Copyright (c) 2022 by Magnum Solutions Ltd.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.