WARNING
This is experimental software for the moment and under active
development.
Under the hood, the module Archive::BagIt::Base was adapted and
extended to support BagIt 1.0 according to RFC 8493
([https://tools.ietf.org/html/rfc8493](https://tools.ietf.org/html/rfc8493)).
Also: Check out Archive::BagIt::Fast if you are willing to add some
extra dependencies to get better speed by mmap-ing files.
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_dir = "/path/to/bag";
my $bag = Archive::BagIt->new($bag_dir);
#construct bag in an existing directory
my $bag2 = Archive::BagIt->make_bag($bag_dir);
# Validate a BagIt archive against its manifest
my $bag3 = Archive::BagIt->new($bag_dir);
my $is_valid = $bag3->verify_bag();
SUBROUTINES
new
An Object Oriented Interface to a bag. Opens an existing bag.
my $bag = Archive::BagIt->new('/path/to/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
SOURCE
The original development version is on github at
http://github.com/rjeschmi/Archive-BagIt and may be cloned from there.
The actual development version is available at
https://art1pirat.spdns.org/art1/Archive-BagIt
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)
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Archive-BagIt
* AnnoCPAN: Annotated CPAN documentation
http://annocpan.org/dist/Archive-BagIt
* CPAN Ratings
http://cpanratings.perl.org/d/Archive-BagIt
* Search CPAN
http://search.cpan.org/dist/Archive-BagIt/