NAME
CfgTie::TieGeneric -- A generic hash that automatically binds others
SYNOPSIS
This is an associative array that automatially ties other configuration hashes
DESCRIPTION
This is a tie to brings other ties together autmomatically so you, the busy programmer and/or system administrator, don't have to. The related PERL module is not loaded unless it is needed at run-time.
my %gen;
tie %gen, 'CfgTie::TieGeneric';
Primary, or well-known, keys
env
-
This refers directly to the
ENV
hash. group
mail
-
This is a special key. It forms a hash, with subkeys... see below for more information
net
-
This is a special key. It forms a hash, with additional subkeys. See below for more details.
user
-
This employs the This is actually a well-known variant of the default.
- Composite
-
Composite primary keys are just like absolute file paths. For example, if you wanted to do something like
my %lusers = $gen{'user'}; my $Favorite_User = $lusers{'mygirl'};
You could just,
my $Favorite_User = $gen{'/users/mygirl'};
- others...
-
These are the things automatically included in. This will be described below.
Subkeys for mail
aliases
Subkeys for net
host
service
protocol
addr
How other ties are automatically bound
Other keys are automatically -- if it all possible -- brought in using the following procedure:
- 1. If it is something already linked it, that thingy is automatically returned (of course).
- 2. If the key is simple, like AABot, we will try to
use AABot;
If that works we will tie it and return the results. - 3. If the key is more complex, like /OS3/Config, we will try to see if
OS3
is already tied (and try to tie it, like above, if not). If that works, we will just lookupConfig
in that hash. If it does not work, we will try touse
andtie
OS3::Config
,OS3::TieConfig
, andOS3::ConfigTie
. If any of those work, we return the results. - 4. Otherwise,
undef
will be returned.
See Also
RCService CfgTie::TieAliases, CfgTie::TieGroup, CfgTie::TieHost, CfgTie::TieNamed, CfgTie::TieNet, CfgTie::TiePh, CfgTie::TieProto, CfgTie::TieServ, CfgTie::TieShadow, CfgTie::TieUser
Author
Randall Maas (randym@acm.org)