File Coverage

blib/lib/Biblio/ILL/ISO/PlaceOnHoldType.pm
Criterion Covered Total %
statement 19 20 95.0
branch 2 4 50.0
condition 1 3 33.3
subroutine 5 5 100.0
pod 1 1 100.0
total 28 33 84.8


line stmt bran cond sub pod time code
1             package Biblio::ILL::ISO::PlaceOnHoldType;
2              
3             =head1 NAME
4              
5             Biblio::ILL::ISO::PlaceOnHoldType
6              
7             =cut
8              
9 4     4   793 use Biblio::ILL::ISO::ILLASNtype;
  4         9  
  4         203  
10 4     4   37 use Biblio::ILL::ISO::ENUMERATED;
  4         8  
  4         82  
11              
12 4     4   21 use Carp;
  4         8  
  4         439  
13              
14             =head1 VERSION
15              
16             Version 0.01
17              
18             =cut
19              
20             our $VERSION = '0.01';
21             #---------------------------------------------------------------------------
22             # Mods
23             # 0.01 - 2003.07.15 - original version
24             #---------------------------------------------------------------------------
25              
26             =head1 DESCRIPTION
27              
28             Biblio::ILL::ISO::PlaceOnHoldType is a derivation of Biblio::ILL::ISO::ENUMERATED.
29              
30             =head1 USES
31              
32             None.
33              
34             =head1 USED IN
35              
36             Biblio::ILL::ISO::Request
37              
38             =cut
39              
40 4     4   728 BEGIN{@ISA = qw ( Biblio::ILL::ISO::ENUMERATED
41             Biblio::ILL::ISO::ILLASNtype );} # inherit from ILLASNtype
42              
43             =head1 FROM THE ASN DEFINITION
44            
45             Place-On-Hold-Type ::= ENUMERATED {
46             yes (1),
47             no (2),
48             according-to-responder-policy (3)
49             }
50              
51             =cut
52              
53             =head1 METHODS
54              
55             =cut
56              
57             #---------------------------------------------------------------
58             #
59             #---------------------------------------------------------------
60             =head1
61              
62             =head2 new( $place_on_hold )
63              
64             Creates a new PlaceOnHoldType object.
65             Valid paramaters are listed in the FROM THE ASN DEFINITION section
66             (e.g. "according-to-responder-policy").
67              
68             =cut
69             sub new {
70 1     1 1 11 my $class = shift;
71 1         3 my $self = {};
72              
73 1         8 $self->{"ENUM_LIST"} = {"yes" => 1,
74             "no" => 2,
75             "according-to-responder-policy" => 3
76             };
77              
78 1 50       4 if (@_) {
79 1         2 my $s = shift;
80            
81 1 50       5 if ( exists $self->{"ENUM_LIST"}->{$s} ) {
82 1         4 $self->{"ENUMERATED"} = $self->{"ENUM_LIST"}->{$s};
83             } else {
84 0         0 croak "invalid PlaceOnHoldType: [$s]";
85             }
86             }
87              
88 1   33     8 bless($self, ref($class) || $class);
89 1         3 return ($self);
90             }
91              
92             =head1 SEE ALSO
93              
94             See the README for system design notes.
95             See the parent class(es) for other available methods.
96              
97             For more information on Interlibrary Loan standards (ISO 10160/10161),
98             a good place to start is:
99              
100             http://www.nlc-bnc.ca/iso/ill/main.htm
101              
102             =cut
103              
104             =head1 AUTHOR
105              
106             David Christensen,
107              
108             =cut
109              
110              
111             =head1 COPYRIGHT AND LICENSE
112              
113             Copyright 2003 by David Christensen
114              
115             This library is free software; you can redistribute it and/or modify it
116             under the same terms as Perl itself.
117              
118             =cut
119             1;