Algorithm-Retry
view release on metacpan or search on metacpan
lib/Algorithm/Retry.pm view on Meta::CPAN
for my $attr (keys %$attrspec) {
if ($attrspec->{$attr}{req}) {
exists($args{$attr})
or die "$class: Missing required attribute '$attr'";
}
if (exists $attrspec->{$attr}{default}) {
$args{$attr} //= $attrspec->{$attr}{default};
}
}
$args{_attempts} = 0;
bless \%args, $class;
}
sub _success_or_failure {
my ($self, $is_success, $timestamp) = @_;
$self->{_last_timestamp} //= $timestamp;
$timestamp >= $self->{_last_timestamp} or
die ref($self).": Decreasing timestamp ".
"($self->{_last_timestamp} -> $timestamp)";
my $delay = $is_success ?
( run in 0.378 second using v1.01-cache-2.11-cpan-de7293f3b23 )