If all you need is to #include a big hash of values from an external file, you can do something like:
package MyConfig;
sub new
{
my $proto = shift;
my $class = ref($proto) || $proto;
my $config =
{
"Servers to poll" =>
{
# host login password
"theophyline" => { "admin" => "secret" },
"caffeine" => { "admin" => "buzzword" },
"theobromine" => { "admin" => "mystery" },
},
"times to poll" =>
{
"3:00 AM",
"4:21 PM",
},
};
bless($config, $class);
return $config;
}
"the end";
Then, in your main code, all you have to do is:
use MyConfig;
my $externalConfig = MyConfig->new();
foreach my $server
(keys %{$externalConfig->{'Servers to poll'}})
{
my ($login, $password) =
each %{$externalConfig->{'Servers to poll'}->{$server}};
# etc....
}
|