Mercurial > pub > Impl
view Lib/Configuration.pm @ 7:94d47b388442
Улучшены тесты
Исправлены ошибки
Улучшена документация
Работа над схемой DOM
author | Sergey |
---|---|
date | Mon, 24 Aug 2009 01:05:34 +0400 |
parents | 03e58a454b20 |
children | 16ada169ca75 |
line wrap: on
line source
package Configuration; use strict; my $Configured = 0; sub import { my ($class,$site) = @_; if ($site and $site ne $Configured) { Configure($site); $Configured = $site; } elsif (not $site and not $Configured) { $Configured = 1; require Configuration::Global; } } our %virtualSite; sub Configure { my $siteName = shift; require Configuration::Global; while ( my ($pattern,$configSite) = each %virtualSite) { next if not $siteName =~ $pattern; if (ref $configSite eq 'CODE') { $configSite->(); } elsif (not ref $configSite and $configSite) { require $configSite; } last; } } 1;