java.lang.Object
iu.type.TypeSpi
- All Implemented Interfaces:
IuTypeSpi
Service provider implementation.
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateComponent(ClassLoader parent, ModuleLayer parentLayer, Consumer<ModuleLayer.Controller> controllerCallback, InputStream componentArchiveSource, InputStream... providedDependencyArchiveSources) ImplementsIuComponent.of(InputStream, InputStream...).IuType<?, ?> resolveType(Type type) Resolves anIuTypeinstance for a generic type.scanComponentEntry(ClassLoader classLoader, ModuleLayer moduleLayer, Path pathEntry) Decorates a path entry in a loaded class environment as acomponent.
-
Constructor Details
-
TypeSpi
public TypeSpi()Default constructor.
-
-
Method Details
-
resolveType
Description copied from interface:IuTypeSpiResolves anIuTypeinstance for a generic type.- Specified by:
resolveTypein interfaceIuTypeSpi- Parameters:
type- Type- Returns:
- Type introspection facade
- See Also:
-
createComponent
public IuComponent createComponent(ClassLoader parent, ModuleLayer parentLayer, Consumer<ModuleLayer.Controller> controllerCallback, InputStream componentArchiveSource, InputStream... providedDependencyArchiveSources) Description copied from interface:IuTypeSpiImplementsIuComponent.of(InputStream, InputStream...).- Specified by:
createComponentin interfaceIuTypeSpi- Parameters:
parent-ClassLoaderfor parent delegationparentLayer-ModuleLayerto extendcontrollerCallback- receives a reference to theModuleLayer.Controllerfor the components's module layercomponentArchiveSource- component archiveprovidedDependencyArchiveSources- provided dependency archives- Returns:
IuComponentinstance- See Also:
-
scanComponentEntry
public IuComponent scanComponentEntry(ClassLoader classLoader, ModuleLayer moduleLayer, Path pathEntry) throws IOException, ClassNotFoundException Description copied from interface:IuTypeSpiDecorates a path entry in a loaded class environment as acomponent.- Specified by:
scanComponentEntryin interfaceIuTypeSpi- Parameters:
classLoader-ClassLoader; must includepathEntryon its class or module path.moduleLayer-ModuleLayerpathEntry- Singlepath entryrepresenting ajar fileor folder containing resources loaded byclassLoader- Returns:
IuComponentdecorated view of the path entry relative to the class loader.- Throws:
IOException- if an I/O error occurs while scanning the path for resources.ClassNotFoundException- if any class discovered on the path could not be loaded usingclassLoader
-