Koha-Contrib-ARK
view release on metacpan or search on metacpan
lib/Koha/Contrib/ARK.pm view on Meta::CPAN
package Koha::Contrib::ARK;
# ABSTRACT: ARK Management
$Koha::Contrib::ARK::VERSION = '1.1.2';
use Moose;
use Modern::Perl;
use JSON;
use DateTime;
use Try::Tiny;
use Koha::Contrib::ARK::Reader;
use Koha::Contrib::ARK::Writer;
use Koha::Contrib::ARK::Update;
use Koha::Contrib::ARK::Clear;
use Koha::Contrib::ARK::Check;
use Koha::Contrib::ARK::Fix;
use Term::ProgressBar;
use C4::Context;
# Action/error id/message
my $raw_actions = <<EOS;
found_right_field ARK found in the right field
found_wrong_field ARK found in the wrong field
found_bad_ark Bad ARK found in ARK field
not_found ARK not found
build ARK Build
clear Clear ARK field
add Add ARK field
fix Fix bad ARK found in correct ARK field
remove_existing Remove existing field while adding ARK field
generated ARK generated
use_biblionumber No koha.id field, use biblionumber to generate ARK
err_pref_missing ARK_CONF preference is missing
err_pref_decoding Can't decode ARK_CONF
err_pref_ark_missing Invalid ARK_CONF preference: 'ark' variable is missing
err_pref_var_missing A variable is missing
err_pref_nothash Variable is not a HASH
err_pref_var_tag Tag invalid
err_pref_var_letter Letter missing
EOS
my $what = { map {
/^(\w*) *(.*)$/;
{ $1 => { id => $1, msg => $2 } }
} split /\n/, $raw_actions };
has c => ( is => 'rw', isa => 'HashRef' );
has cmd => (
is => 'rw',
isa => 'Str',
trigger => sub {
my ($self, $cmd) = @_;
$self->error("Invalid command: $cmd\n")
if $cmd !~ /check|clear|update|fix/;
return $cmd;
},
default => 'check',
);
has fromwhere => ( is => 'rw', isa => 'Str' );
has doit => ( is => 'rw', isa => 'Bool', default => 0 );
( run in 1.938 second using v1.01-cache-2.11-cpan-5735350b133 )