public class DslCodeGenerator extends Object implements MethodCallBuilderRegistry
Take into account that code generation is a continuous improving process, so please report any unexpected or missing conversions as issues in repository, so we keep improving it.
Check MethodCallBuilder for instructions on how to implement DSL code generation for new
DSL test elements.
MethodCallBuilder| Constructor and Description |
|---|
DslCodeGenerator() |
| Modifier and Type | Method and Description |
|---|---|
DslCodeGenerator |
addBuilders(MethodCallBuilder... builders)
Allows registering MethodCallBuilders that are not associated to a DSL builder method.
|
DslCodeGenerator |
addBuildersFrom(Class<?>... dslClasses)
Allows registering DSL classes containing builder methods, which can be used to generate DSL
code for.
|
DslCodeGenerator |
addDependency(Class<?> dependencyClass,
String dependencyLocator)
Allows registering libraries required to use a specific class.
|
MethodCall |
buildMethodCallFromJmxFile(File file) |
<T extends MethodCallBuilder> |
findBuilderByClass(Class<T> builderClass) |
Optional<MethodCallBuilder> |
findBuilderMatchingContext(MethodCallContext context) |
String |
generateCodeFromJmx(File file)
Generates DSL code from JMX file.
|
DslCodeGenerator |
setBuilderOption(String optionName,
Object optionValue) |
public DslCodeGenerator addBuildersFrom(Class<?>... dslClasses)
This method allows you to register DSL classes from none core modules or your own custom DSL classes. This is the way DslGenerators can discover new DSL test elements, and their associated MethodCallBuilder instances, to generate code for.
dslClasses - are the classes containing builder methods.public DslCodeGenerator addBuilders(MethodCallBuilder... builders)
This is helpful when some element has no DSL builder method counterpart, but still there is a way to convert the element (eg: ignoring it all together, only converting children, etc).
builders - list of MethodCallBuilders to register into the generator.public DslCodeGenerator addDependency(Class<?> dependencyClass, String dependencyLocator)
dependencyClass - is the class to register a library for.dependencyLocator - the jbang
library locator for the library containing the class.public String generateCodeFromJmx(File file) throws IOException
file - is the JMX file from which DSL code will be generated.IOException - when there is some problem reading the file.public MethodCall buildMethodCallFromJmxFile(File file) throws IOException
IOExceptionpublic Optional<MethodCallBuilder> findBuilderMatchingContext(MethodCallContext context)
findBuilderMatchingContext in interface MethodCallBuilderRegistrypublic <T extends MethodCallBuilder> T findBuilderByClass(Class<T> builderClass)
findBuilderByClass in interface MethodCallBuilderRegistrypublic DslCodeGenerator setBuilderOption(String optionName, Object optionValue)
Copyright © 2023. All rights reserved.