SuperAPI AI Directory

generate-classes

Coding & development

View repository

Updated 10-16 07:43

About this skill

Generate DSL Classes

Run the v2 compiler (ANTLR4 + Javassist) to generate bytecode classes from DSL scripts and dump .class files to disk for inspection.

Commands by argument

mal — MAL expression classes

./mvnw test -pl oap-server/analyzer/dsl-scripts-test \
  -Dtest=MALExpressionExecutionTest -DfailIfNoTests=false -Dcheckstyle.skip

Output location: oap-server/analyzer/dsl-scripts-test/src/test/resources/scripts/mal/**/*.generated-classes/

oal — OAL metrics/dispatcher/builder classes

./mvnw test -pl oap-server/oal-rt \
  -Dtest=RuntimeOALGenerationTest -DfailIfNoTests=false -Dcheckstyle.skip

Output location: oap-server/oal-rt/target/test-classes/metrics/, metrics/builder/, dispatcher/

lal — LAL filter/extractor classes

./mvnw test -pl oap-server/analyzer/dsl-scripts-test \
  -Dtest=LALExpressionExecutionTest -DfailIfNoTests=false -Dcheckstyle.skip

Output location: oap-server/analyzer/dsl-scripts-test/src/test/resources/scripts/lal/**/*.generated-classes/

hierarchy — Hierarchy rule classes

./mvnw test -pl oap-server/analyzer/dsl-scripts-test \
  -Dtest=HierarchyRuleExecutionTest -DfailIfNoTests=false -Dcheckstyle.skip

Output location: oap-server/analyzer/dsl-scripts-test/src/test/resources/scripts/hierarchy-rule/*.generated-classes/

all or no argument — generate all DSLs

Run all four commands above sequentially.

After generation

Print the output location for the requested DSL so the user knows where to find the generated .class files. Use javap to decompile:

javap -c -p <path-to-class-file>

Cleaning generated classes

./mvnw clean -pl oap-server/analyzer/dsl-scripts-test