
| Current Path : /var/www/web-klick.de/dsh/10_customer2017/1204__intel/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/web-klick.de/dsh/10_customer2017/1204__intel/OptiModify.pm |
package OptiModify;
use strict;
use Data::Dumper;
sub new {
my $class = shift;
my $self = {};
$self->{'FILE'} = shift;
bless($self,$class);
open(FFILE,"<".$self->{'FILE'});
$self->{'TEXT'} = join("",<FFILE>);
close(FFILE);
$self->{'FUNC'} = []; # Liste aller Funktionen
my $t = $self->{'TEXT'} . "sub XXX\n";
while ($t =~ s/^(.*?)\n(sub )(.*)$/$2$3/s) {
push(@{$self->{'FUNC'}},$1."\n");
}
return($self);
}
#**********************************************************
sub run {
my $self = shift;
my $func;
my @erg = ();
foreach $func (@{$self->{'FUNC'}}) {
# $func = $self->makeCamel($func);
$func = $self->make_taskprogress($func);
$func =~ s/\n( +)setTask/\n:::::$1setTask/gs;
push(@erg,$func);
}
print join("",@erg);
return("");
}
#**********************************************************
sub makeCamel {
my $self = shift;
my $func = shift;
my $o1; my $o2; my $o3;
while ($func =~ s/\$([a-z0-9A-Z]+)\_([a-z])([a-z0-9\_]+)/---XXX---YYY---/) {
$o1 = $1;
$o2 = uc($2);
$o3 = $3;
$func =~ s/---XXX---YYY---( *)\=/\$$o1$o2$o3$1 \=/;
$func =~ s/---XXX---YYY---/\$$o1$o2$o3$1/;
}
return($func);
}
#**********************************************************
sub make_taskprogress {
my $self = shift;
my $func = shift;
my $o1; my $o2; my $o3;
my $list_of_tasks = [];
while ($func =~ s/\n( +)my \$([^\n]*?)( +\= +\$taskProgress->planSubTask\( *taskName[^\n]*?)\n/\n$1my \$$2$3\n/s) {
$o1 = $2;
$o2 = $func;
$o2 =~ s/\$$o1//;
$o2 =~ s/\$$o1//;
$o2 =~ s/\$$o1//;
next if ($o2 =~ /\$$o1/);
push(@$list_of_tasks,$o1);
}
while ($func =~ s/\n( +)my \$([^\n]*?)( +\= +\$taskProgress->planSubTask\( *taskName[^\n]*?)\n/\n$1my \$$2$3\n/s) {
1;
}
my $zaehler = 0;
foreach $o1 (@$list_of_tasks) {
$zaehler = $zaehler + 1;
$func =~ s/\n( +)my \$($o1)( +\= +\$taskProgress->planSubTask\( *taskName[^\n]*?)\n/\n$1---ZAEHLER---\n/s;
$func =~ s/\n +\$($o1)->start\([^\n]*?\n/\n/s;
$o2 = "\$taskProgress->startStep(";
$func =~ s/\n( +)\$($o1)->startStep\(/\n===>>$1$o2/s;
}
$func =~ s/---ZAEHLER---/===>>\$taskProgress->increasePlannedStepCount\( $zaehler \)\;/;
$func =~ s/\n *---ZAEHLER---//gs;
# print Dumper($list_of_tasks);
$func =~ s/\=\=\=\>\>//gs;
return($func);
}
#************************************************************
1;