X-Git-Url: https://git.camperquake.de/gitweb.cgi?p=xmlrtorrent.git;a=blobdiff_plain;f=xmlrtorrent%2FHTTPTalker.pm;fp=xmlrtorrent%2FHTTPTalker.pm;h=d8b9340519a1ec446c0d5dba8fa3f41f25853da3;hp=9160f8f2c48658e10ef8839df9444a9e84d0a92e;hb=3e90a6abb65aa1872a56eabd1e76f1ee54ed5847;hpb=feda2830239fe2c173411147161db90dc9c304f9 diff --git a/xmlrtorrent/HTTPTalker.pm b/xmlrtorrent/HTTPTalker.pm index 9160f8f..d8b9340 100644 --- a/xmlrtorrent/HTTPTalker.pm +++ b/xmlrtorrent/HTTPTalker.pm @@ -35,19 +35,23 @@ sub send_request { my $self = shift; my @params = @_; - unless (exists($self->{'_PARAMS'}->{'XMLURL'}) and defined($self->{'_PARAMS'}->{'XMLURL'})) { + my $xmlurl = $self->_getval('XMLURL'); + + unless (defined($xmlurl) and $xmlurl ne '') { return 'http talker: XMLURL not set'; } - if ($self->{'_PARAMS'}->{'XMLURL'} ne $self->{'_LASTXMLURL'}) { - $self->{'_LASTXMLURL'} = $self->{'_PARAMS'}->{'XMLURL'}; - $self->{'__RPCClient'} = RPC::XML::Client->new($self->{'_PARAMS'}->{'XMLURL'}); + if ($xmlurl ne $self->{'_LASTXMLURL'}) { + $self->{'_LASTXMLURL'} = $xmlurl; + $self->{'__RPCClient'} = RPC::XML::Client->new($xmlurl); } - if ((exists($self->{'_PARAMS'}->{'USERNAME'}) and exists($self->{'_PARAMS'}->{'PASSWORD'})) and - ($self->{'_PARAMS'}->{'USERNAME'} ne '')) { + my $username = $self->_getval('USERNAME'); + my $password = $self->_getval('PASSWORD'); + + if (defined $username and defined $password and $username ne '') { # mitch: let me guess, the realm must be configurable, too! - $self->{'__RPCClient'}->credentials('', $self->{'_PARAMS'}->{'USERNAME'}, $self->{'_PARAMS'}->{'PASSWORD'}); + $self->{'__RPCClient'}->credentials('', $username, $password); } return $self->{'__RPCClient'}->send_request(@params);