public abstract class Vfs extends Object
use the fromURL(java.net.URL) to get a Vfs.Dir
and than use Vfs.Dir.getFiles() to iterate over it's Vfs.File
for example:
Vfs.Dir dir = Vfs.fromURL(url);
Iterable files = dir.getFiles();
for (Vfs.File file : files) {
InputStream is = file.openInputStream();
}
use org.reflections.vfs.Vfs#findFiles(java.util.Collection, com.google.common.base.Predicate) to get an
iteration of files matching given name predicate over given list of urls
fromURL(java.net.URL) uses static Vfs.DefaultUrlTypes to resolves URLs
and it can be plugged in with addDefaultURLTypes(org.reflections.vfs.Vfs.UrlType) or setDefaultURLTypes(java.util.List).
for example:
Vfs.addDefaultURLTypes(new Vfs.UrlType() {
public boolean matches(URL url) {
return url.getProtocol().equals("http");
}
public Vfs.Dir createDir(final URL url) {
return new HttpDir(url); //implement this type... (check out a naive implementation on VfsTest)
}
});
Vfs.Dir dir = Vfs.fromURL(new URL("http://mirrors.ibiblio.org/pub/mirrors/maven2/org/slf4j/slf4j-api/1.5.6/slf4j-api-1.5.6.jar"));
| Modifier and Type | Class and Description |
|---|---|
static class |
Vfs.DefaultUrlTypes
default url types used by
fromURL(java.net.URL) |
static interface |
Vfs.Dir
an abstract vfs dir
|
static interface |
Vfs.File
an abstract vfs file
|
static interface |
Vfs.UrlType
a matcher and factory for a url
|
| Constructor and Description |
|---|
Vfs() |
| Modifier and Type | Method and Description |
|---|---|
static void |
addDefaultURLTypes(Vfs.UrlType urlType)
add a static default url types.
|
static Iterable<Vfs.File> |
findFiles(Collection<URL> inUrls,
return an iterable of all
Vfs.File in given urls, matching filePredicate |
static Iterable<Vfs.File> |
findFiles(Collection<URL> inUrls,
String packagePrefix,
return an iterable of all
Vfs.File in given urls, starting with given packagePrefix and matching nameFilter |
static Vfs.Dir |
fromURL(URL url)
tries to create a Dir from the given url, using the defaultUrlTypes
|
static Vfs.Dir |
fromURL(URL url,
List<Vfs.UrlType> urlTypes)
tries to create a Dir from the given url, using the given urlTypes
|
static Vfs.Dir |
fromURL(URL url,
Vfs.UrlType... urlTypes)
tries to create a Dir from the given url, using the given urlTypes
|
static List<Vfs.UrlType> |
getDefaultUrlTypes()
the default url types that will be used when issuing
fromURL(java.net.URL) |
static File |
getFile(URL url)
try to get
File from url |
static void |
setDefaultURLTypes(List<Vfs.UrlType> urlTypes)
sets the static default url types.
|
public static List<Vfs.UrlType> getDefaultUrlTypes()
fromURL(java.net.URL)public static void setDefaultURLTypes(List<Vfs.UrlType> urlTypes)
public static void addDefaultURLTypes(Vfs.UrlType urlType)
public static Vfs.Dir fromURL(URL url)
public static Vfs.Dir fromURL(URL url, List<Vfs.UrlType> urlTypes)
public static Vfs.Dir fromURL(URL url, Vfs.UrlType... urlTypes)
public static Iterable<Vfs.File> findFiles(Collection<URL> inUrls, String packagePrefix,nameFilter)
Vfs.File in given urls, starting with given packagePrefix and matching nameFilterpublic static Iterable<Vfs.File> findFiles(Collection<URL> inUrls,filePredicate)
Vfs.File in given urls, matching filePredicateCopyright © 2014. All rights reserved.