_irspy_identifier2target() recognises and allows for comma-separated
authorMike Taylor <mike@miketaylor.org.uk>
Fri, 2 Jul 2010 15:22:13 +0000 (16:22 +0100)
committerMike Taylor <mike@miketaylor.org.uk>
Fri, 2 Jul 2010 15:22:13 +0000 (16:22 +0100)
ZOOM-style options at the front of IRSpy identifiers.

lib/ZOOM/IRSpy/Utils.pm

index 9ead6b3..089e8e7 100644 (file)
@@ -285,13 +285,13 @@ sub _irspy_identifier2target {
     confess "_irspy_identifier2target(): id is undefined"
        if !defined $id;
 
-    my($protocol, $target) = ($id =~ /(.*?):(.*)/);
+    my($prefix, $protocol, $target) = ($id =~ /([^:]*,)?(.*?):(.*)/);
     if (uc($protocol) eq "Z39.50" || uc($protocol) eq "TCP") {
-       return "tcp:$target";
+       return "${prefix}tcp:$target";
     } elsif (uc($protocol) eq "SRU") {
-       return "sru=get,http:$target";
+       return "${prefix}sru=get,http:$target";
     } elsif (uc($protocol) eq "SRW") {
-       return "sru=srw,http:$target";
+       return "${prefix}sru=srw,http:$target";
     }
 
     warn "_irspy_identifier2target($id): unrecognised protocol '$protocol'";