|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.cayenne.util.ResourceLocator
public class ResourceLocator
Utility class to find resources (files, etc.), using a preconfigured strategy.
Field Summary | |
---|---|
protected List<String> |
additionalClassPaths
|
protected List<String> |
additionalFilesystemPaths
|
protected ClassLoader |
classLoader
|
protected boolean |
skipAbsolutePath
|
protected boolean |
skipClasspath
|
protected boolean |
skipCurrentDirectory
|
protected boolean |
skipHomeDirectory
|
Constructor Summary | |
---|---|
ResourceLocator()
Creates new ResourceLocator with default lookup policy including user home directory, current directory and CLASSPATH. |
Method Summary | |
---|---|
void |
addClassPath(String customPath)
Adds a custom path for class path lookups. |
void |
addFilesystemPath(File path)
Adds the given directory as a path for filesystem lookups. |
void |
addFilesystemPath(String path)
Adds the given String as a custom path for filesystem lookups. |
static String |
classBaseUrl(Class<?> aClass)
Deprecated. since 3.0 unused. |
URL |
findDirectoryResource(String name)
Returns a directory resource URL using the lookup strategy configured for this ResourceLocator or null if no readable resource can be found for the
given name. |
static File |
findFileInCurrentDirectory(String name)
Looks up a file in the current directory. |
static File |
findFileInFileSystem(String name)
Looks up a file in the filesystem. |
static File |
findFileInHomeDirectory(String name)
Looks up a file in the user home directory. |
URL |
findResource(String name)
Returns a resource URL using the lookup strategy configured for this Resourcelocator or null if no readable resource can be found for the
given name. |
static InputStream |
findResourceInClasspath(String name)
Deprecated. since 3.0 unused. |
static InputStream |
findResourceInFileSystem(String name)
Deprecated. since 3.0 unused |
InputStream |
findResourceStream(String name)
Returns an InputStream on the found resource using the lookup strategy configured for this ResourceLocator or null if no readable resource can be
found for the given name. |
static URL |
findURLInClassLoader(String name,
ClassLoader loader)
Looks up the URL for the named resource using the specified ClassLoader. |
static URL |
findURLInClasspath(String name)
Looks up the URL for the named resource using this class' ClassLoader. |
ClassLoader |
getClassLoader()
Returns the ClassLoader associated with this ResourceLocator. |
URL |
getResource(String name)
Returns a single resource matching a given name. |
Collection<URL> |
getResources(String name)
Returns a collection of resource URLs with a given name found in the environment using some lookup strategy. |
void |
setClassLoader(ClassLoader classLoader)
Sets ClassLoader used to locate resources. |
void |
setSkipAbsolutePath(boolean skipAbsPath)
Sets "skipAbsolutePath" property. |
void |
setSkipClasspath(boolean skipClasspath)
Sets "skipClasspath" property. |
void |
setSkipCurrentDirectory(boolean skipCurDir)
Sets "skipCurrentDirectory" property. |
void |
setSkipHomeDirectory(boolean skipHomeDir)
Sets "skipHomeDirectory" property. |
boolean |
willSkipAbsolutePath()
Returns true if no lookups are performed using path as absolute path. |
boolean |
willSkipClasspath()
Returns true if no lookups are performed in the classpath. |
boolean |
willSkipCurrentDirectory()
Returns true if no lookups are performed in the current directory. |
boolean |
willSkipHomeDirectory()
Returns true if no lookups are performed in the user home directory. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected boolean skipAbsolutePath
protected boolean skipClasspath
protected boolean skipCurrentDirectory
protected boolean skipHomeDirectory
protected List<String> additionalClassPaths
protected List<String> additionalFilesystemPaths
protected ClassLoader classLoader
Constructor Detail |
---|
public ResourceLocator()
Method Detail |
---|
public static InputStream findResourceInClasspath(String name)
null
otherwise. Lookup is normally performed in all JAR and ZIP files and directories
available to the ClassLoader.
public static InputStream findResourceInFileSystem(String name)
null
otherwise. Lookup is first performed relative to the user's
home directory (as defined by "user.home" system property), and then relative to
the current directory.
public static File findFileInFileSystem(String name)
findFileInHomeDirectory(String)
,
findFileInCurrentDirectory(String)
public static File findFileInHomeDirectory(String name)
null
if file
cannot be found or is not readable.public static File findFileInCurrentDirectory(String name)
null
if file
can not be found is not readable.public static URL findURLInClasspath(String name)
public static URL findURLInClassLoader(String name, ClassLoader loader)
public static String classBaseUrl(Class<?> aClass)
public InputStream findResourceStream(String name)
null
if no readable resource can be
found for the given name.
public URL getResource(String name)
ResourceFinder
getResource
in interface ResourceFinder
public Collection<URL> getResources(String name)
ResourceFinder
getResources
in interface ResourceFinder
public URL findResource(String name)
null
if no readable resource can be found for the
given name.
public URL findDirectoryResource(String name)
null
if no readable resource can be found for the
given name. The returned resource is assumed to be a directory, so the returned URL
will be in a directory format (with "/" at the end).
public boolean willSkipHomeDirectory()
public void setSkipHomeDirectory(boolean skipHomeDir)
public boolean willSkipCurrentDirectory()
public void setSkipCurrentDirectory(boolean skipCurDir)
public boolean willSkipClasspath()
public void setSkipClasspath(boolean skipClasspath)
public ClassLoader getClassLoader()
public void setClassLoader(ClassLoader classLoader)
null
is passed, the
ClassLoader of the ResourceLocator class will be used.
public boolean willSkipAbsolutePath()
public void setSkipAbsolutePath(boolean skipAbsPath)
public void addClassPath(String customPath)
public void addFilesystemPath(String path)
IllegalArgumentException
- if path
is null
.public void addFilesystemPath(File path)
IllegalArgumentException
- if path
is null
,
not a directory or not readable.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |