File Coverage

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