package Pickles::Util;
use strict;
use Path::Class;
use base qw(Exporter);
use Carp ();
our @EXPORT_OK = qw(env_name env_value);
sub env_name {
my( $name, $appname ) = @_;
$appname =~ s/::/_/g;
return uc(join('_', $appname, $name));
}
sub env_value {
return $ENV{ env_name(@_) };
}
sub appname {
my $class = shift;
if (my $appname = $ENV{PICKLES_APPNAME}) {
return $appname;
}
if ( $class =~ m/^(.*?)::(Context|Config)$/ ) {
my $appname = $1;
return $appname;
}
Carp::croak("Could not determine APPNAME from either %ENV or classname ($class)");
}
1;
__END__