--- nfo/perl/libs/libp.pm 2002/12/19 01:05:35 1.10 +++ nfo/perl/libs/libp.pm 2002/12/22 14:15:02 1.12 @@ -1,8 +1,14 @@ ################################# # -# $Id: libp.pm,v 1.10 2002/12/19 01:05:35 joko Exp $ +# $Id: libp.pm,v 1.12 2002/12/22 14:15:02 joko Exp $ # # $Log: libp.pm,v $ +# Revision 1.12 2002/12/22 14:15:02 joko +# + sub mkObject +# +# Revision 1.11 2002/12/19 16:27:17 joko +# +- renamed 'cmd' to 'run_cmd' +# # Revision 1.10 2002/12/19 01:05:35 joko # + sub today # @@ -50,16 +56,16 @@ md5 md5_hex md5_base64 ParseDate UnixDate strftime - stripHtml stripSpaces stripNewLines toReal trim croak + + stripHtml stripSpaces stripNewLines toReal trim array_getDifference getDirList - now + now today deep_copy getNewPerlObjectByPkgName - cmd - run_cmds - today + run_cmd run_cmds + mkObject ); use Data::Dumper; @@ -236,7 +242,18 @@ return $pkgname->new($args); } -sub cmd ($) { +sub mkObject { + my $pkgname = shift; + #my $args = shift; + #$logger->debug( __PACKAGE__ . "->getNewPerlObjectByPkgName( pkgname $pkgname args $args )" ); + my $evstring = "use $pkgname;"; + eval($evstring); + #$@ && $logger->error( __PACKAGE__ . ':' . __LINE__ . " Error in eval $evstring: " . $@ ); + $@ && print( __PACKAGE__ . ':' . __LINE__ . " Error in eval \"$evstring\": " . $@ ); + return $pkgname->new(@_); +} + +sub run_cmd { my $cmd = shift; $cmd = 'perl ' . $cmd; my $sep = "-" x 90; @@ -249,7 +266,7 @@ sub run_cmds { foreach (@_) { - cmd($_); + run_cmd($_); } }