Package org.apache.lucene.util

# Class ModuleResourceLoader

java.lang.Object
org.apache.lucene.util.ModuleResourceLoader

All Implemented Interfaces:
  `ResourceLoader`

public final class ModuleResourceLoader extends Object implements ResourceLoader
Simple `ResourceLoader` that uses `Module.getResourceAsStream(String)` and `Class.forName(Module,String)` to open resources and classes, respectively. Resource paths must be absolute to module's root.

To use this class, you must open the module to the `org.apache.lucene.core` module, otherwise resources can't be looked up.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ModuleResourceLoader(Module module)`
  Creates an instance using the given Java Module to load resources and classes.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `<T> Class<? extends T>`
  `findClass(String cname, Class<T> expectedType)`
  Finds class of the name and expected type
  `InputStream`
  `openResource(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 Details

  - ### ModuleResourceLoader

    public ModuleResourceLoader(Module module)
    Creates an instance using the given Java Module to load resources and classes.

- ## Method Details

  - ### openResource

    public InputStream openResource(String resource) throws IOException
    Description copied from interface: `ResourceLoader`
    Opens a named resource
    Specified by:
      `openResource` in interface `ResourceLoader`
    Throws:
      `IOException`

  - ### findClass

    public <T> Class<? extends T> findClass(String cname, Class<T> expectedType)
    Description copied from interface: `ResourceLoader`
    Finds class of the name and expected type
    Specified by:
      `findClass` in interface `ResourceLoader`