Tooling

The tooling modules provides a set of utilities and generators that are used to reduce the maintenance cost of documentation and the reference app. None of these modules are formally released as part of the framework.

Broadly speaking there are two main sets of tools:

  • the causeway-tooling-cli module (in tooling/cli) creates a CLI jar file (causeway-tooling-cli.jar) that is used to generate two different sets of documentation for the website:

    • under antora/components/refguide-index

      are the index pages. Typically API classes are included in the index, and this is done by simply including:

      @since {@index}

      within their javadoc. Learn more about how to reference these generated pages in our internal design docs.

    • under core/adoc

      is an overview of all of the modules that make up the framework. This can be found at System Overview.

    For more on the CLI, see tooling CLI docs. You could also inspect the preview.sh script (and the various scripts it calls in turn) to see how we use the CLI in practice.

  • the causeway-tooling-metaprog module (in tooling/metaprog`) contains a set of test classes that are used to generate classes and files for the various datatypes showcased in the reference app.

    To use, locate the ValueTypeGenTemplateTest class.