Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import static gov.loc.repository.bagit.hash.StandardSupportedAlgorithms.SHA1;
- import java.io.File;
- import java.nio.file.Files;
- import java.nio.file.Path;
- import java.nio.file.Paths;
- import java.util.Arrays;
- import java.util.HashMap;
- import java.util.HashSet;
- import java.util.Map;
- import java.util.Set;
- import gov.loc.repository.bagit.creator.BagCreator;
- import gov.loc.repository.bagit.domain.Bag;
- import gov.loc.repository.bagit.domain.Manifest;
- import gov.loc.repository.bagit.writer.BagWriter;
- public class bagdemo {
- public static void main( String[] args ) throws Exception {
- // setup bag
- Path bagdir = Paths.get("bagdir");
- Files.createDirectory(bagdir);
- Bag bag = BagCreator.bagInPlace(bagdir, Arrays.asList(SHA1), false);
- Manifest manifest = (Manifest)bag.getPayLoadManifests().toArray()[0];
- Map<Path, String> filemap = manifest.getFileToChecksumMap();
- // copy a file to the data directory and add to the bag manifest
- Path src = Paths.get("/path/to/foo.jpg");
- Path dst = Paths.get("bagdir/data/fcrepo/rest/foo.jpg");
- String sha1 = "eee158ac3120ad6e86218c2ad43d25901e8c6201";
- File parent = dst.toFile().getParentFile();
- if ( !parent.exists() ) {
- parent.mkdirs();
- }
- Files.copy(src, dst);
- filemap.put(dst, sha1);
- // finish bag
- BagWriter.write(bag, bag.getRootDir());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement