}
sub retarget_holds {
- $logger->info("circulator: retargeting prev_check_time=null holds after opportunistic capture");
+ my $self = shift;
+ $logger->info("circulator: retargeting holds @{$self->retarget} after opportunistic capture");
my $ses = OpenSRF::AppSession->create('open-ils.storage');
- $ses->request('open-ils.storage.action.hold_request.copy_targeter');
+ $ses->request('open-ils.storage.action.hold_request.copy_targeter', undef, $self->retarget);
# no reason to wait for the return value
return;
}
or return (undef, $editor->event);
- my $retarget = 0;
+ my @retarget;
# re-target any other holds that already target this copy
for my $old_hold (@$old_holds) {
$old_hold->clear_prev_check_time;
$editor->update_action_hold_request($old_hold)
or return (undef, $editor->event);
- $retarget = 1;
+ push(@retarget, $old_hold->id);
}
- return ($best_hold, undef, $retarget);
+ return ($best_hold, undef, (@retarget) ? \@retarget : undef);
}