Package org.jboss.byteman.layer
Class LayerModuleFinder
java.lang.Object
org.jboss.byteman.layer.LayerModuleFinder
- All Implemented Interfaces:
ModuleFinder
ModuleFinder implementation used by the module installed by LayerFactory
to locate class definitions when an attempt is made to load a class into
the module. The finder uses a ModuelReader which passes the request back
to the installer of the module, allowing it either to generate or load
the class definition as it sees fit.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final String
the name of the single module this module finder finds classes forprivate ModuleReference
a module reference describing this finder's module -
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
moduleName
the name of the single module this module finder finds classes for -
reference
a module reference describing this finder's module
-
-
Constructor Details
-
LayerModuleFinder
public LayerModuleFinder(String moduleName, String[] exportsNames, String[] requiresNames, Function<String, byte[]> classMapper) construct a finder for a single module populated with classes by the supplier classmapper- Parameters:
moduleName
- the name of the one module to be installed in the layerexportsNames
- an array of names of packages to be exported by the modulerequiresNames
- an array of names of modules to be imported by the moduleclassMapper
- a function provided by the caller to populate the module with classes which accepts a class name and returns the corresponding class file format byte array. The name will be presented in the format "x/y/z/MyClass.class".
-
-
Method Details
-
find
- Specified by:
find
in interfaceModuleFinder
-
findAll
- Specified by:
findAll
in interfaceModuleFinder
-