diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/EGID.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/EGID.pm index 3dac632..f4e06f3 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/EGID.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/EGID.pm @@ -50,8 +50,9 @@ additional comparisons. <= > >= + ! -Atleast one EGID must be specified. +Atleast one value must be specified. If the new method fails, it dies. @@ -158,6 +159,12 @@ sub match{ return 1; } } + elsif( $egid =~ /^\![0-9]+$/ ){ + $egid=~s/^\!//; + if ( $proc_egid ne $egid ){ + return 1; + } + } $egid_int++; } diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/EUID.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/EUID.pm index 6a6eedb..d384022 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/EUID.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/EUID.pm @@ -50,8 +50,9 @@ additional comparisons. <= > >= + ! -Atleast one EUID must be specified. +Atleast one value must be specified. If the new method fails, it dies. @@ -157,6 +158,11 @@ sub match{ if ( $proc_euid > $euid ){ return 1; } + }elsif( $euid =~ /^\![0-9]+$/ ){ + $euid=~s/^\!//; + if ( $proc_euid ne $euid ){ + return 1; + } } $euid_int++; } diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/GID.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/GID.pm index f4d7e1a..a9bdfa2 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/GID.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/GID.pm @@ -50,8 +50,9 @@ additional comparisons. <= > >= + ! -Atleast one GID must be specified. +Atleast one value must be specified. If the new method fails, it dies. @@ -157,6 +158,11 @@ sub match{ if ( $proc_gid > $gid ){ return 1; } + }elsif( $gid =~ /^\![0-9]+$/ ){ + $gid=~s/^\!//; + if ( $proc_gid ne $gid ){ + return 1; + } } $gid_int++; } diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/PctCPU.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/PctCPU.pm index 7d6d5f9..4b4dd84 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/PctCPU.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/PctCPU.pm @@ -50,8 +50,9 @@ additional comparisons. <= > >= + ! -Atleast one PctCPU must be specified. +Atleast one value must be specified. If the new method fails, it dies. @@ -157,6 +158,11 @@ sub match{ if ( $proc_pctcpu > $pctcpu ){ return 1; } + }elsif( $pctcpu =~ /^\![0-9.]+$/ ){ + $pctcpu=~s/^\!//; + if ( $proc_pctcpu ne $pctcpu ){ + return 1; + } } $pctcpu_int++; } diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/PctMem.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/PctMem.pm index d0cf01a..1a67dc7 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/PctMem.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/PctMem.pm @@ -50,8 +50,9 @@ additional comparisons. <= > >= + ! -Atleast one PctMem must be specified. +Atleast one value must be specified. If the new method fails, it dies. @@ -170,6 +171,11 @@ sub match{ if ( $proc_pctmem > $pctmem ){ return 1; } + }elsif( $pctmem =~ /^\![0-9.]+$/ ){ + $pctmem=~s/^\!//; + if ( $proc_pctmem ne $pctmem ){ + return 1; + } } $pctmem_int++; } diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Priority.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Priority.pm index 9f46a26..2b173be 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Priority.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Priority.pm @@ -50,6 +50,7 @@ additional comparisons. <= > >= + ! Atleast one Priority must be specified. @@ -157,6 +158,11 @@ sub match{ if ( $proc_priority > $priority ){ return 1; } + }elsif( $priority =~ /^\![0-9]+$/ ){ + $priority=~s/^\!//; + if ( $proc_priority ne $priority ){ + return 1; + } } $priority_int++; } diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/RSS.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/RSS.pm index 55968d7..4dcb7b8 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/RSS.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/RSS.pm @@ -50,8 +50,9 @@ additional comparisons. <= > >= + ! -Atleast one RSS must be specified. +Atleast one value must be specified. If the new method fails, it dies. @@ -157,6 +158,11 @@ sub match{ if ( $proc_rss > $rss ){ return 1; } + }elsif( $rss =~ /^\![0-9]+$/ ){ + $rss=~s/^\!//; + if ( $proc_rss ne $rss ){ + return 1; + } } $rss_int++; } diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Size.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Size.pm index 0af9151..9316541 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Size.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Size.pm @@ -52,7 +52,7 @@ additional comparisons. >= ! -Atleast one Size must be specified. +Atleast one value must be specified. If the new method fails, it dies. diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Start.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Start.pm index 1e86861..303ab97 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Start.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Start.pm @@ -50,8 +50,9 @@ additional comparisons. <= > >= + ! -Atleast one Start must be specified. +Atleast one value must be specified. If the new method fails, it dies. @@ -133,30 +134,35 @@ sub match{ while (defined( $self->{starts}[$start_int] )){ my $start=$self->{starts}[$start_int]; if ( - ( $start =~ /^[0-9]+$/ ) && + ( $start =~ /^[.0-9]+$/ ) && ( $start eq $proc_start ) ){ return 1; - }elsif( $start =~ /^\<\=[0-9]+$/ ){ + }elsif( $start =~ /^\<\=[.0-9]+$/ ){ $start=~s/^\<\=//; if ( $proc_start <= $start ){ return 1; } - }elsif( $start =~ /^\<[0-9]+$/ ){ + }elsif( $start =~ /^\<[.0-9]+$/ ){ $start=~s/^\\=[0-9]+$/ ){ + }elsif( $start =~ /^\>\=[.0-9]+$/ ){ $start=~s/^\>\=//; if ( $proc_start >= $start ){ return 1; } - }elsif( $start =~ /^\>[0-9]+$/ ){ + }elsif( $start =~ /^\>[.0-9]+$/ ){ $start=~s/^\>//; if ( $proc_start > $start ){ return 1; } + }elsif( $start =~ /^\![.0-9]+$/ ){ + $start=~s/^\!//; + if ( $proc_start ne $start ){ + return 1; + } } $start_int++; } diff --git a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Time.pm b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Time.pm index 227b773..7c19600 100644 --- a/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Time.pm +++ b/Proc-ProcessTable-Match/lib/Proc/ProcessTable/Match/Time.pm @@ -50,8 +50,9 @@ additional comparisons. <= > >= + ! -Atleast one Time must be specified. +Atleast one value must be specified. If the new method fails, it dies. @@ -133,31 +134,37 @@ sub match{ while (defined( $self->{times}[$time_int] )){ my $time=$self->{times}[$time_int]; if ( - ( $time =~ /^[0-9]+$/ ) && + ( $time =~ /^[.0-9]+$/ ) && ( $time eq $proc_time ) ){ return 1; - }elsif( $time =~ /^\<\=[0-9]+$/ ){ + }elsif( $time =~ /^\<\=[.0-9]+$/ ){ $time=~s/^\<\=//; if ( $proc_time <= $time ){ return 1; } - }elsif( $time =~ /^\<[0-9]+$/ ){ + }elsif( $time =~ /^\<[.0-9]+$/ ){ $time=~s/^\\=[0-9]+$/ ){ + }elsif( $time =~ /^\>\=[.0-9]+$/ ){ $time=~s/^\>\=//; if ( $proc_time >= $time ){ return 1; } - }elsif( $time =~ /^\>[0-9]+$/ ){ + }elsif( $time =~ /^\>[.0-9]+$/ ){ $time=~s/^\>//; if ( $proc_time > $time ){ return 1; } } + elsif( $time =~ /^\![.0-9]+$/ ){ + $time=~s/^\!//; + if ( $proc_time ne $time ){ + return 1; + } + } $time_int++; }