WARNING
This is experimental software for the moment and under active development. I hope to have a beta version available soon.
We use it fairly widely in-house, but it doesn't necessarily implement all of the specs.
Email me with anything you need done urgently.
Also: Check out Archive::BagIt::Fast if you are willing to add some extra dependendies to get better speed by mmap-ing files.
NAME
Archive::BagIt - An interface to make and verify bags according to the BagIt standard
VERSION
Version 0.03
SYNOPSIS
This modules will hopefully help with the basic commands needed to create and verify a bag. My intention is not to be strict and enforce all of the specification. The reference implementation is the java version and I will endeavour to maintain compatibility with it.
use Archive::BagIt;
#read in an existing bag:
my $bag = Archive::BagIt->new($bag_dir);
#construct bag in an existing directory
my $bag = Archive::BagIt->make_bag($bag_dir);
# Validate a BagIt archive against its manifest
my $bag = Archive::BagIt->new($bag_dir);
$is_valid = $bag->verify_bag();
SUBROUTINES
new An Object Oriented Interface to a bag. Opens an existing bag.
make_bag A constructor that will make and return a bag from a directory
If a data directory exists, assume it is already a bag (no checking for invalid files in root)
verify_bag
An interface to verify a bag.
You might also want to check Archive::BagIt::Fast to see a more direct way of accessing files (and thus faster).
get_checksum
This is the checksum for the bag, md5 of the manifest-md5.txt
version
Returns the bagit version according to the bagit.txt file.
payload_files
Returns an array with all of the payload files (those files that are below the data directory)
non_payload_files
Returns an array with files that are in the root of the bag, non-manifest files
manifest_files
return an array with the list of manifest files that exist in the bag
tagmanifest_files
return an array with the list of tagmanifest files
AUTHOR
Robert Schmidt, <rjeschmi at gmail.com> William Wueppelmann, <william at c7a.ca>
BUGS
Please report any bugs or feature requests to bug-archive-bagit at rt.cpan.org
, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Archive-BagIt. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.
SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Archive::BagIt
You can also look for information at:
RT: CPAN's request tracker (report bugs here)
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
Search CPAN
COPYRIGHT
Copyright (c) 2012, the above named author(s).
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.