Class FrontendWebComponentGenerator
java.lang.Object
io.jmix.flowui.devserver.frontend.FrontendWebComponentGenerator
- All Implemented Interfaces:
Serializable
Generates embeddable web component files in npm mode, hiding the complexity
caused by using a different class loader.
Uses
WebComponentModulesWriter
to
generate web component modules files from
WebComponentExporter
or
WebComponentExporterFactory
implementations found by
ClassFinder
.- See Also:
-
Constructor Summary
ConstructorDescriptionFrontendWebComponentGenerator
(com.vaadin.flow.server.frontend.scanner.ClassFinder finder) Creates a new instances and stores thefinder
to be used for locatingWebComponentModulesWriter
andWebComponentExporter
/WebComponentExporterFactory
classes. -
Method Summary
Modifier and TypeMethodDescriptiongenerateWebComponents
(File outputDirectory, com.vaadin.flow.theme.ThemeDefinition theme) CollectsWebComponentModulesWriter
class and classes that extendWebComponentExporter
/WebComponentExporterFactory
usingfinder
.
-
Constructor Details
-
FrontendWebComponentGenerator
public FrontendWebComponentGenerator(com.vaadin.flow.server.frontend.scanner.ClassFinder finder) Creates a new instances and stores thefinder
to be used for locatingWebComponentModulesWriter
andWebComponentExporter
/WebComponentExporterFactory
classes.- Parameters:
finder
-ClassFinder
implementation
-
-
Method Details
-
generateWebComponents
public Set<File> generateWebComponents(File outputDirectory, com.vaadin.flow.theme.ThemeDefinition theme) CollectsWebComponentModulesWriter
class and classes that extendWebComponentExporter
/WebComponentExporterFactory
usingfinder
. Generates web component modules and places the into theoutputDirectory
.- Parameters:
outputDirectory
- target directory for the web component module filestheme
- the theme defined usingTheme
ornull
if not defined- Returns:
- generated files
- Throws:
IllegalStateException
- iffinder
cannot locate required classes
-