10 |
use Data::Dumper; |
use Data::Dumper; |
11 |
use LWP; |
use LWP; |
12 |
use URI::Escape; |
use URI::Escape; |
13 |
|
use List::Util qw/first/; |
14 |
|
|
15 |
=head1 NAME |
=head1 NAME |
16 |
|
|
217 |
my $args = {@_}; |
my $args = {@_}; |
218 |
my $log = $self->_get_logger; |
my $log = $self->_get_logger; |
219 |
|
|
220 |
my @labels = $self->master( action => 'nodelist' ); |
my $node = first { $_->{name} eq $args->{to} } $self->master( action => 'nodelist' ); |
221 |
|
|
222 |
$log->debug("got labels: ", join("|", @labels)); |
if (! $node) { |
223 |
|
$log->warn("can't find node $args->{to}, skipping link creaton"); |
224 |
|
return; |
225 |
|
} |
226 |
|
|
227 |
@labels = grep(/^$args->{to}\t/, @labels); |
my $label = $node->{label}; |
|
my $label = shift @labels; |
|
|
(undef,$label) = split(/\t/, $label) if ($label); |
|
228 |
|
|
229 |
if (! $label) { |
if (! $label) { |
230 |
$log->warn("can't find label for $args->{to}, skipping link creaton"); |
$log->warn("can't find label for $args->{to}, skipping link creaton"); |
233 |
|
|
234 |
$log->debug("using label $label for $args->{to}"); |
$log->debug("using label $label for $args->{to}"); |
235 |
|
|
236 |
return $self->estcall( |
return $self->{db}->set_link( |
237 |
validate => 'node', |
$self->{masterurl} . '/node/' . $args->{to}, |
238 |
action => '_set_link', |
$label, |
239 |
rest_url => $self->{masterurl} . '/node/' . $args->{from} . '/_set_link' , |
$args->{credit}, |
|
url => $self->{masterurl} . '/node/' . $args->{to}, |
|
|
label => $label, |
|
|
credit => $args->{credit}, |
|
240 |
); |
); |
241 |
} |
} |
242 |
|
|