package gov.loc.repository.bagit; import java.io.IOException; import java.nio.file.FileVisitResult; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.SimpleFileVisitor; import java.nio.file.attribute.BasicFileAttributes; import org.junit.Assert; public class FileExistsVistor extends SimpleFileVisitor<Path>{ private transient final Path originalBag; private transient final Path newBag; public FileExistsVistor(final Path originalBag, final Path newBag){ this.originalBag = originalBag; this.newBag = newBag; } @Override public FileVisitResult preVisitDirectory(final Path dir, final BasicFileAttributes attrs) throws IOException { Path relative = originalBag.relativize(dir); Assert.assertTrue(Files.exists(newBag.resolve(relative))); return FileVisitResult.CONTINUE; } @Override public FileVisitResult visitFile(final Path path, final BasicFileAttributes attrs)throws IOException{ final Path relative = originalBag.relativize(path); Assert.assertTrue(Files.exists(newBag.resolve(relative))); return FileVisitResult.CONTINUE; } }