Skip to content

RussellMcOrmond/Archive-BagIt

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAME

Archive::BagIt

VERSION

version 0.057

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();

NAME

Archive::BagIt

VERSION

version 0.057

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.

NAME

Archive::BagIt - An interface to make and verify bags according to the BagIt standard

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

AUTHORS

  • Robert Schmidt, <rjeschmi at gmail.com>
  • William Wueppelmann, <william at c7a.ca>
  • Andreas Romeyke, <pause at andreas minus romeyke.de>

CONTRIBUTORS

  • Serhiy Bolkun
  • Russell McOrmond

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

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:

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.

AVAILABILITY

The latest version of this module is available from the Comprehensive Perl Archive Network (CPAN). Visit http://www.perl.com/CPAN/ to find a CPAN site near you, or see https://metacpan.org/module/Archive::BagIt/.

SOURCE

The development version is on github at https://github.com/Archive-BagIt and may be cloned from git://github.com/Archive-BagIt.git

BUGS AND LIMITATIONS

You can make new bug reports, and view existing ones, through the web interface at http://rt.cpan.org.

AUTHOR

Rob Schmidt rjeschmi@gmail.com

COPYRIGHT AND LICENSE

This software is copyright (c) 2020 by Rob Schmidt and William Wueppelmann.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

AUTHOR

Rob Schmidt rjeschmi@gmail.com

COPYRIGHT AND LICENSE

This software is copyright (c) 2020 by Rob Schmidt and William Wueppelmann.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

Releases

No releases published

Packages

No packages published

Languages

  • Perl 100.0%