/[cvs]/nfo/perl/libs/libp.pm
ViewVC logotype

Diff of /nfo/perl/libs/libp.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by joko, Fri Nov 29 04:44:53 2002 UTC revision 1.13 by joko, Mon Dec 23 04:25:13 2002 UTC
# Line 3  Line 3 
3  #  $Id$  #  $Id$
4  #  #
5  #  $Log$  #  $Log$
6    #  Revision 1.13  2002/12/23 04:25:13  joko
7    #  + sub bool2status
8    #
9    #  Revision 1.12  2002/12/22 14:15:02  joko
10    #  + sub mkObject
11    #
12    #  Revision 1.11  2002/12/19 16:27:17  joko
13    #  +- renamed 'cmd' to 'run_cmd'
14    #
15    #  Revision 1.10  2002/12/19 01:05:35  joko
16    #  + sub today
17    #
18    #  Revision 1.9  2002/12/05 13:54:00  joko
19    #  + fix: let 'deep_copy' print its message out (instead of die)
20    #
21    #  Revision 1.8  2002/12/01 22:11:35  joko
22    #  + sub cmd
23    #  + sub run_cmds
24    #
25  #  Revision 1.7  2002/11/29 04:44:53  joko  #  Revision 1.7  2002/11/29 04:44:53  joko
26  #  - sub array_getRelations  #  - sub array_getRelations
27  #  + sub getNewPerlObjectByPkgName  #  + sub getNewPerlObjectByPkgName
# Line 40  our @EXPORT_OK = qw( Line 59  our @EXPORT_OK = qw(
59      md5 md5_hex md5_base64      md5 md5_hex md5_base64
60      ParseDate UnixDate      ParseDate UnixDate
61      strftime      strftime
     stripHtml stripSpaces stripNewLines toReal trim  
62      croak      croak
63    
64        stripHtml stripSpaces stripNewLines toReal trim
65      array_getDifference      array_getDifference
66      getDirList      getDirList
67      now      now today
68      deep_copy      deep_copy
69      getNewPerlObjectByPkgName      getNewPerlObjectByPkgName
70        run_cmd run_cmds
71        mkObject
72        bool2status
73  );  );
74    
75  use Data::Dumper;  use Data::Dumper;
# Line 193  sub now { Line 216  sub now {
216    return strftime("%Y-%m-%d %H:%M:%S", localtime);    return strftime("%Y-%m-%d %H:%M:%S", localtime);
217  }  }
218    
219    sub today {
220      return strftime("%Y-%m-%d", localtime);
221    }
222    
223  # ACK's go to ...  # ACK's go to ...
224  sub deep_copy {  sub deep_copy {
225    my $this = shift;    my $this = shift;
# Line 204  sub deep_copy { Line 231  sub deep_copy {
231      +{map { $_ => deep_copy($this->{$_}) } keys %$this};      +{map { $_ => deep_copy($this->{$_}) } keys %$this};
232    } elsif (ref $this eq "CODE") {    } elsif (ref $this eq "CODE") {
233      $this;      $this;
234    } else { die "what type is $_?" }    #} else { die "deep_copy asks: what type is $this?" }
235      } else { print "deep_copy asks: what type is $this?", "\n"; }
236  }  }
237    
238  sub getNewPerlObjectByPkgName {  sub getNewPerlObjectByPkgName {
# Line 218  sub getNewPerlObjectByPkgName { Line 246  sub getNewPerlObjectByPkgName {
246    return $pkgname->new($args);    return $pkgname->new($args);
247  }  }
248    
249    sub mkObject {
250      my $pkgname = shift;
251      #my $args = shift;
252      #$logger->debug( __PACKAGE__ . "->getNewPerlObjectByPkgName( pkgname $pkgname args $args )" );
253      my $evstring = "use $pkgname;";
254      eval($evstring);
255      #$@ && $logger->error( __PACKAGE__ . ':' . __LINE__ . " Error in eval $evstring: " .  $@ );
256      $@ && print( __PACKAGE__ . ':' . __LINE__ . " Error in eval \"$evstring\": " .  $@ );
257      return $pkgname->new(@_);
258    }
259    
260    sub run_cmd {
261      my $cmd = shift;
262      $cmd = 'perl ' . $cmd;
263      my $sep = "-" x 90;
264      print $sep, "\n";
265      print "  ", $cmd, "\n";
266      print $sep, "\n";
267      system($cmd);
268      print "\n";
269    }
270    
271    sub run_cmds {
272      foreach (@_) {
273        run_cmd($_);
274      }
275    }
276    
277    sub bool2status {
278      my $bool = shift;
279      return ($bool ? 'ok' : 'failed');
280    }
281    
282  1;  1;

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.13

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed