diff options
| author | Evgeni Golov <evgeni@golov.de> | 2014-10-03 21:58:31 +0200 |
|---|---|---|
| committer | Evgeni Golov <evgeni@golov.de> | 2014-10-03 21:58:31 +0200 |
| commit | d17e8369ca11e7816772d074b284933adbba38e4 (patch) | |
| tree | afc52476d271d8120b7e3bdd10997d2e86023703 /lib/Monitoring | |
| parent | c29f2b286752f844a7659ec38fc22aeb02f0ff45 (diff) | |
| download | monitoring-plugin-perl-d17e8369ca11e7816772d074b284933adbba38e4.tar.gz | |
format optional arguments in square brakets
Diffstat (limited to 'lib/Monitoring')
| -rw-r--r-- | lib/Monitoring/Plugin/Getopt.pm | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/lib/Monitoring/Plugin/Getopt.pm b/lib/Monitoring/Plugin/Getopt.pm index e09ff62..3575ce6 100644 --- a/lib/Monitoring/Plugin/Getopt.pm +++ b/lib/Monitoring/Plugin/Getopt.pm | |||
| @@ -82,6 +82,7 @@ sub _spec_to_help | |||
| 82 | my ($self, $spec, $label) = @_; | 82 | my ($self, $spec, $label) = @_; |
| 83 | 83 | ||
| 84 | my ($opts, $type) = split /=|:/, $spec, 2; | 84 | my ($opts, $type) = split /=|:/, $spec, 2; |
| 85 | my $optional = ($spec =~ m/:/); | ||
| 85 | my (@short, @long); | 86 | my (@short, @long); |
| 86 | for (split /\|/, $opts) { | 87 | for (split /\|/, $opts) { |
| 87 | if (length $_ == 1) { | 88 | if (length $_ == 1) { |
| @@ -93,11 +94,20 @@ sub _spec_to_help | |||
| 93 | 94 | ||
| 94 | my $help = join(', ', @short, @long); | 95 | my $help = join(', ', @short, @long); |
| 95 | if ($type) { | 96 | if ($type) { |
| 96 | if ($label) { | 97 | if (!$label) { |
| 97 | $help .= '=' . $label; | 98 | if ($type eq 'i' || $type eq '+' || $type =~ /\d+/) { |
| 99 | $label = 'INTEGER'; | ||
| 100 | } | ||
| 101 | else { | ||
| 102 | $label = 'STRING'; | ||
| 103 | } | ||
| 104 | } | ||
| 105 | |||
| 106 | if ($optional) { | ||
| 107 | $help .= '[=' . $label . ']'; | ||
| 98 | } | 108 | } |
| 99 | else { | 109 | else { |
| 100 | $help .= ($type eq 'i' || $type eq '+' || $type =~ /\d+/) ? '=INTEGER' : '=STRING'; | 110 | $help .= '=' . $label; |
| 101 | } | 111 | } |
| 102 | } | 112 | } |
| 103 | elsif ($label) { | 113 | elsif ($label) { |
