projects
/
irspy-moved-to-github.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
652eb39
)
_parse_target_string() factored out of targets()
author
Mike Taylor
<mike@indexdata.com>
Tue, 18 Jul 2006 11:10:38 +0000
(11:10 +0000)
committer
Mike Taylor
<mike@indexdata.com>
Tue, 18 Jul 2006 11:10:38 +0000
(11:10 +0000)
lib/ZOOM/IRSpy.pm
patch
|
blob
|
history
diff --git
a/lib/ZOOM/IRSpy.pm
b/lib/ZOOM/IRSpy.pm
index
0fb95f7
..
2024e46
100644
(file)
--- a/
lib/ZOOM/IRSpy.pm
+++ b/
lib/ZOOM/IRSpy.pm
@@
-1,4
+1,4
@@
-# $Id: IRSpy.pm,v 1.6 2006-06-21 16:24:55 mike Exp $
+# $Id: IRSpy.pm,v 1.7 2006-07-18 11:10:38 mike Exp $
package ZOOM::IRSpy;
package ZOOM::IRSpy;
@@
-76,16
+76,11
@@
sub targets {
my @targets = split /\s+/, $targetList;
my @qlist;
foreach my $target (@targets) {
my @targets = split /\s+/, $targetList;
my @qlist;
foreach my $target (@targets) {
- my($host, $port, $db) = ($target =~ /(.*?):(.*?)\/(.*)/);
- if (!defined $host) {
- $port = 210;
- ($host, $db) = ($target =~ /(.*?)\/(.*)/);
- my $new = "$host:$port/$db";
- $this->log("irspy_debug", "rewriting '$target' to '$new'");
- $target = $new;
+ my($host, $port, $db, $newtarget) = _parse_target_string($target);
+ if ($newtarget ne $target) {
+ $this->log("irspy_debug", "rewriting '$target' to '$newtarget'");
+ $target = $newtarget; ### Does this get written through the ref?
}
}
- die "invalid target string '$target'"
- if !defined $host;
push @qlist,
(qq[(host = "$host" and port = "$port" and path="$db")]);
}
push @qlist,
(qq[(host = "$host" and port = "$port" and path="$db")]);
}
@@
-95,6
+90,23
@@
sub targets {
}
}
+# Also used by ZOOM::IRSpy::Record
+sub _parse_target_string {
+ my($target) = @_;
+
+ my($host, $port, $db) = ($target =~ /(.*?):(.*?)\/(.*)/);
+ if (!defined $host) {
+ $port = 210;
+ ($host, $db) = ($target =~ /(.*?)\/(.*)/);
+ $target = "$host:$port/$db";
+ }
+ die "invalid target string '$target'"
+ if !defined $host;
+
+ return ($host, $port, $db, $target);
+}
+
+
# There are two cases.
#
# 1. A specific set of targets is nominated on the command line.
# There are two cases.
#
# 1. A specific set of targets is nominated on the command line.