package JavaScript::Librarian::Library;
use strict;
use base 'Algorithm::Dependency::Source';
use vars qw{$VERSION};
BEGIN {
$VERSION = '1.00';
}
#####################################################################
# Algorithm::Dependency::Source Methods
# Overload ->load to add checking to make sure that all the ::Book
# object have a valid ->path.
sub load {
my $self = shift;
my $class = ref $self;
# Call the normal method
$self->SUPER::load or return undef;
# Check that all the items are Book objects
foreach my $Book ( $self->items ) {
next if UNIVERSAL::isa($Book, 'JavaScript::Librarian::Book');
die "$class\::_load_item_list returned something that was not a JavaScript::Library::Book";
}
1;
}
1;