package marubinotto.piggydb.spike;
import java.net.URL;
import org.apache.commons.vfs2.AllFileSelector;
import org.apache.commons.vfs2.FileObject;
import org.apache.commons.vfs2.FileSystemManager;
import org.apache.commons.vfs2.VFS;
import org.junit.Test;
public class VfsSpike {
@Test
public void listJarContents() throws Exception {
URL url = getClass().getResource("/org/apache/commons/vfs2");
System.out.println(url);
FileSystemManager fsManager = VFS.getManager();
FileObject dir = fsManager.resolveFile(url.toExternalForm());
for (FileObject file : dir.getChildren()) {
System.out.println(file.getName().getBaseName());
System.out.println(" " + file.getType());
}
}
@Test
public void copyDir() throws Exception {
FileSystemManager fsManager = VFS.getManager();
FileObject tmpDir = fsManager.resolveFile(System.getProperty("java.io.tmpdir"));
System.out.println("tmpDir: " + tmpDir.getName());
String url = getClass().getResource("/org/apache/commons/vfs2").toExternalForm();
System.out.println("url1: " + url);
FileObject src = fsManager.resolveFile(url);
System.out.println("url2: " + src.getName());
tmpDir.copyFrom(src, new AllFileSelector());
}
}