Package org.apache.lucene.util
Class ClasspathResourceLoader
- java.lang.Object
-
- org.apache.lucene.util.ClasspathResourceLoader
-
- All Implemented Interfaces:
ResourceLoader
public final class ClasspathResourceLoader extends java.lang.Object implements ResourceLoader
SimpleResourceLoaderthat usesClassLoader.getResourceAsStream(String)andClass.forName(String,boolean,ClassLoader)to open resources and classes, respectively.To use this class with the Java Module System, you must open all modules on classpath that contain resources to the
org.apache.lucene.coremodule, otherwise resources can't be looked up. It is recommended to useModuleResourceLoaderfor such use cases as this would limit to certain modules.- See Also:
ModuleResourceLoader
-
-
Constructor Summary
Constructors Modifier Constructor Description ClasspathResourceLoader(java.lang.Class<?> clazz)Creates an instance using the context classloader to load Resources and classes Resources are resolved relative to the given class, if path is not absolute.privateClasspathResourceLoader(java.lang.Class<?> clazz, java.lang.ClassLoader loader)ClasspathResourceLoader(java.lang.ClassLoader loader)Creates an instance using the given classloader to load Resources and classes.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> java.lang.Class<? extends T>findClass(java.lang.String cname, java.lang.Class<T> expectedType)Finds class of the name and expected typejava.io.InputStreamopenResource(java.lang.String resource)Opens a named resource-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.util.ResourceLoader
newInstance
-
-
-
-
Constructor Detail
-
ClasspathResourceLoader
public ClasspathResourceLoader(java.lang.ClassLoader loader)
Creates an instance using the given classloader to load Resources and classes. Resource paths must be absolute.
-
ClasspathResourceLoader
public ClasspathResourceLoader(java.lang.Class<?> clazz)
Creates an instance using the context classloader to load Resources and classes Resources are resolved relative to the given class, if path is not absolute.
-
ClasspathResourceLoader
private ClasspathResourceLoader(java.lang.Class<?> clazz, java.lang.ClassLoader loader)
-
-
Method Detail
-
openResource
public java.io.InputStream openResource(java.lang.String resource) throws java.io.IOExceptionDescription copied from interface:ResourceLoaderOpens a named resource- Specified by:
openResourcein interfaceResourceLoader- Throws:
java.io.IOException
-
findClass
public <T> java.lang.Class<? extends T> findClass(java.lang.String cname, java.lang.Class<T> expectedType)Description copied from interface:ResourceLoaderFinds class of the name and expected type- Specified by:
findClassin interfaceResourceLoader
-
-