Class ClassLoaderServiceImpl

java.lang.Object
org.infinispan.search.mapper.mapping.impl.ClassLoaderServiceImpl
All Implemented Interfaces:
ClassResolver, ResourceResolver, ServiceResolver

public final class ClassLoaderServiceImpl extends Object implements ClassResolver, ResourceResolver, ServiceResolver
An implementation of the ClassResolver, ResourceResolver and ServiceResolver contracts that just delegates loading to an actual ClassLoader.
Since:
9.2
Author:
anistor@redhat.com
  • Constructor Details

    • ClassLoaderServiceImpl

      public ClassLoaderServiceImpl(ClassLoader classLoader)
  • Method Details

    • classForName

      public Class<?> classForName(String className)
      Description copied from interface: ClassResolver
      Locate a class by name.
      Specified by:
      classForName in interface ClassResolver
      Parameters:
      className - The name of the class to locate
      Returns:
      The class reference
    • locateResourceStream

      public InputStream locateResourceStream(String name)
      Description copied from interface: ResourceResolver
      Locate a resource by name (classpath lookup) and get its stream.
      Specified by:
      locateResourceStream in interface ResourceResolver
      Parameters:
      name - The resource name.
      Returns:
      The stream of the located resource; may return null to indicate the resource was not found
    • loadJavaServices

      public <S> Iterable<S> loadJavaServices(Class<S> serviceContract)
      Description copied from interface: ServiceResolver
      Discovers and instantiates implementations of the named service contract.

      NOTE : We are talking about services as defined by ServiceLoader.

      Specified by:
      loadJavaServices in interface ServiceResolver
      Type Parameters:
      S - The type of the service contract
      Parameters:
      serviceContract - The java type defining the service contract
      Returns:
      The ordered set of discovered services.