tentackle-sql:document
Full name:
org.tentackle:tentackle-sql-maven-plugin:25.20.0.0:document
Description:
Renders the model as a set of cross-linked HTML or Markdown pages, one per entity, plus an index page.
Unlike the ModelComment wurblet's Javadoc comment block, entity names mentioned on a page are hyperlinks to that entity's own page, so the whole model can be browsed by following references, composite trees, and inheritance in a browser or Markdown viewer.
Attributes:
- Requires a Maven project to be executed.
- Executes as an aggregator goal.
- The goal is thread-safe and supports parallel builds.
Optional Parameters
| Name | Type | Since | Description |
|---|---|---|---|
<alienTables> |
List<String> |
- |
Optional list of table names not belonging to the model.
Could be just simple names, but in fact are regular expressions. Must not contain the schema name, only the table name! |
<backendNames> |
String |
- |
Comma-separated list of backend names.
The following special names are recognized:
User Property: tentackle.backendNames |
<backendProperties> |
List<FileSet> |
- |
The backend property files. |
<backends> |
List<BackendInfoParameter> |
- |
Backend configuration via the pom.
Combined with backendNames
and backendProperties
. For the same backend name, these definitions replace the others. |
<bundleDir> |
File |
- |
Optional directory where to create bundle property files.
Contains all attribute- and relation names with their comments. Useful to copy and paste into the project for auto table config or default editors. |
<charset> |
String |
- |
The encoding to read and write files.
Applied JVM-wide, see org.tentackle.maven.AbstractTentackleMojo.determineEncoding()
.Default: ${project.build.sourceEncoding} |
<checkBackendSpecificNames> |
boolean |
- |
Check for reserved backend-specific names.
Asserts that column-, schema-, table- and index-names don't conflict with reserved words of the configured backends. Default: true |
<checkModelNames> |
boolean |
- |
Checks the names used in the model via the org.tentackle.model.NameVerifier
. Turn this off if you want to skip the name checks (to load legacy models, for example).Default: true |
<checkReservedTables> |
boolean |
- |
Check for reserved table names.
Invokes org.tentackle.sql.metadata.MetaDataUtilities.isReservedTable(java.lang.String)
.Default: true |
<cssFile> |
File |
- |
Optional project-specific stylesheet, copied verbatim to style.css.
Applies only to the html format.
Overrides the default theme (colors, fonts) generated otherwise. The structural rules (tables, lists, spacing) live in the separate, always-generated base.css and are not affected - a custom stylesheet only needs to redefine the --tentackle-doc-* CSS variables it wants to change or override selectors outright for full control.User Property: tentackle.cssFile |
<docDir> |
File |
- |
Directory to create the pages in (HTML or Markdown). Default: ${project.build.directory}/model-docUser Property: tentackle.docDir |
<dumpAnnotationsAsOptions> |
String |
- |
List of annotations that should be printed as attribute options.
A comma separates multiple annotations. If the annotation ends with a |, it matches only annotations without parameters.
The special annotation @* matches all annotations and @*| matches all annotations without parameters.
Example: |
<dumpAsComment> |
boolean |
- |
Model dump should be dumped as comment blocks (default). Default: true |
<dumpColumnGap> |
int |
- |
Minimum number of spaces between columns in the attribute section (default = 2). Default: 2 |
<dumpCompact> |
boolean |
- |
Compact model dump.
Omits implicit configuration in dumped model code. By default, all configuration keywords are printed for proofreading. In compact mode, however, only the keywords that are actually required are printed, making it more suitable as input for source code generation. |
<dumpDir> |
File |
- |
Optional directory where to dump the model.
Useful for debugging to verify that the model was interpreted correctly or to pretty-print the model source. |
<dumpModelIndex> |
File |
- |
Creates an additional file containing the names of the dumped files.
Usually combined with dumpModelSource
to create META-INF/MODEL-INDEX.LIST in order to load the model from a jar file. |
<dumpModelSource> |
boolean |
- |
Dumps the original model source instead of the parsed entity. |
<dumpVariables> |
boolean |
- |
Model dump should include variables (default). Default: true |
<entityAliases> |
String |
- |
The entity aliases. User Property: tentackle.entityAliases |
<filesets> |
List<FileSet> |
- |
Explicit filesets given instead of the model directory. |
<format> |
String |
- |
The output format.
Either html (the default) or markdown (alias md), case-insensitive. Both formats provide the same content and the same navigation between the pages; Markdown pages are named *.md and use GitHub-flavored pipe tables and fenced code blocks.Default: htmlUser Property: tentackle.docFormat |
<generateHeaderComment> |
boolean |
- |
Create a header comment. Default: true |
<jdkToolchain> |
Map<String,String> |
- |
Toolchain for invocation of external tools.
Explicitly specifies the "jdk" toolchain for this plugin only. Overrides the toolchain selected by the maven-toolchain-plugin, if any.
Example: <jdkToolchain>
<version>25</version>
</jdkToolchain>
To deselect the toolchain configured by the maven-toolchain-plugin:
<jdkToolchain></jdkToolchain> |
<loadModelFromClassPath> |
boolean |
- |
Uses the model found in the resources of the classpath.
Useful to migrate the database tables for dependencies, for example, the Tentackle framework's model. Requires that the plugin dependencies contain the model resources (see dumpModelIndex
and dumpModelSource
).
Notice: for the User Property: tentackle.loadModelFromClassPath |
<mapSchemas> |
boolean |
- |
Map schema names to flat table names. User Property: tentackle.mapSchemas |
<minLogLevel> |
String |
- |
The minimum logging java.util.logging.Level
to redirect java.util logging to the maven logger.
Any name or value accepted by java.util.logging.Level.parse(java.lang.String)
.Default: WARNING |
<modelDefaults> |
String |
- |
The model defaults. User Property: tentackle.modelDefaults |
<modelDir> |
File |
- |
Directory holding the model files to be processed.
Ignored if fileset explicitly given. Default: ${project.build.directory}/wurbel/modelUser Property: tentackle.modelDir |
<modelName> |
String |
- |
The model name. Default: defaultUser Property: tentackle.modelName |
<skip> |
Boolean |
- |
Skips processing.
If not set, defaults to true if packaging is "pom" and the execution is recursive (see org.tentackle.maven.AbstractTentackleMojo.isSkippedByDefault()
). |
<sqlDir> |
File |
- |
Directory holding the generated SQL scripts, one sub-directory per backend. Default: ${project.build.directory}/sqlUser Property: tentackle.sqlDir |
<title> |
String |
- |
The heading shown on the index page.
Defaults to the maven project's name. User Property: tentackle.htmlTitle |
<useDropIfExists> |
boolean |
- |
Use IF EXISTS for drop index, constraint, and column if the backend supports it.
If not supported, a warning will be logged. Applies to the migrate and validate goals only. |
<verbosity> |
String |
- |
The verbosity.
One of "default", "info" or "debug". Other values are treated as "default". If not set, debug is turned on by Maven's global debug flag (see command line switch -X).Default: ${tentackle.verbosity} |
Parameter Details
<alienTables>
Could be just simple names, but in fact are regular expressions.
Must not contain the schema name, only the table name!
- Type:
java.util.List<java.lang.String> - Required:
No
<backendNames>
The following special names are recognized:
- all: all non-deprecated backends
- none: does not match any backend
- deprecated: all deprecated backends
- Type:
java.lang.String - Required:
No - User Property:
tentackle.backendNames
<backendProperties>
- Type:
java.util.List<org.apache.maven.shared.model.fileset.FileSet> - Required:
No
<backends>
Combined with
backendNames
and backendProperties
. For the same backend name, these definitions replace the others.- Type:
java.util.List<org.tentackle.maven.plugin.sql.BackendInfoParameter> - Required:
No
<bundleDir>
Contains all attribute- and relation names with their comments.
Useful to copy and paste into the project for auto table config or default editors.
- Type:
java.io.File - Required:
No
<charset>
Applied JVM-wide, see
org.tentackle.maven.AbstractTentackleMojo.determineEncoding()
.- Type:
java.lang.String - Required:
No - Default:
${project.build.sourceEncoding}
<checkBackendSpecificNames>
Asserts that column-, schema-, table- and index-names don't conflict with reserved words of the configured backends.
- Type:
boolean - Required:
No - Default:
true
<checkModelNames>
org.tentackle.model.NameVerifier
. Turn this off if you want to skip the name checks (to load legacy models, for example).- Type:
boolean - Required:
No - Default:
true
<checkReservedTables>
Invokes
org.tentackle.sql.metadata.MetaDataUtilities.isReservedTable(java.lang.String)
.- Type:
boolean - Required:
No - Default:
true
<cssFile>
style.css.
Applies only to the
html format.
Overrides the default theme (colors, fonts) generated otherwise. The structural rules (tables, lists, spacing) live in the separate, always-generated
base.css and are not affected - a custom stylesheet only needs to redefine the --tentackle-doc-* CSS variables it wants to change or override selectors outright for full control.- Type:
java.io.File - Required:
No - User Property:
tentackle.cssFile
<docDir>
- Type:
java.io.File - Required:
No - User Property:
tentackle.docDir - Default:
${project.build.directory}/model-doc
<dumpAnnotationsAsOptions>
A comma separates multiple annotations.
If the annotation ends with a
|, it matches only annotations without parameters.
The special annotation
@* matches all annotations and @*| matches all annotations without parameters.
Example: @NotNull|, @NotZero
- Type:
java.lang.String - Required:
No
<dumpAsComment>
- Type:
boolean - Required:
No - Default:
true
<dumpColumnGap>
- Type:
int - Required:
No - Default:
2
<dumpCompact>
Omits implicit configuration in dumped model code.
By default, all configuration keywords are printed for proofreading.
In compact mode, however, only the keywords that are actually required are printed, making it more suitable as input for source code generation.
- Type:
boolean - Required:
No
<dumpDir>
Useful for debugging to verify that the model was interpreted correctly or to pretty-print the model source.
- Type:
java.io.File - Required:
No
<dumpModelIndex>
Usually combined with
dumpModelSource
to create META-INF/MODEL-INDEX.LIST in order to load the model from a jar file.- Type:
java.io.File - Required:
No
<dumpModelSource>
- Type:
boolean - Required:
No
<dumpVariables>
- Type:
boolean - Required:
No - Default:
true
<entityAliases>
- Type:
java.lang.String - Required:
No - User Property:
tentackle.entityAliases
<filesets>
- Type:
java.util.List<org.apache.maven.shared.model.fileset.FileSet> - Required:
No
<format>
Either
html (the default) or markdown (alias md), case-insensitive. Both formats provide the same content and the same navigation between the pages; Markdown pages are named *.md and use GitHub-flavored pipe tables and fenced code blocks.- Type:
java.lang.String - Required:
No - User Property:
tentackle.docFormat - Default:
html
<generateHeaderComment>
- Type:
boolean - Required:
No - Default:
true
<jdkToolchain>
Explicitly specifies the
"jdk" toolchain for this plugin only. Overrides the toolchain selected by the maven-toolchain-plugin, if any.
Example:
<jdkToolchain>
<version>25</version>
</jdkToolchain>
To deselect the toolchain configured by the maven-toolchain-plugin:
<jdkToolchain></jdkToolchain>
- Type:
java.util.Map<java.lang.String, java.lang.String> - Required:
No
<loadModelFromClassPath>
Useful to migrate the database tables for dependencies, for example, the Tentackle framework's model.
Requires that the plugin dependencies contain the model resources (see
dumpModelIndex
and dumpModelSource
).
Notice: for the migrate and validate goals, the model files in the filesets are ignored when this flag is true! If only the Tentackle tables should be migrated, make sure to set checkReservedTables to false.
The document goal loads the classpath model in addition to the local model files.
- Type:
boolean - Required:
No - User Property:
tentackle.loadModelFromClassPath
<mapSchemas>
- Type:
boolean - Required:
No - User Property:
tentackle.mapSchemas
<minLogLevel>
java.util.logging.Level
to redirect java.util logging to the maven logger.
Any name or value accepted by
java.util.logging.Level.parse(java.lang.String)
.- Type:
java.lang.String - Required:
No - Default:
WARNING
<modelDefaults>
- Type:
java.lang.String - Required:
No - User Property:
tentackle.modelDefaults
<modelDir>
Ignored if fileset explicitly given.
- Type:
java.io.File - Required:
No - User Property:
tentackle.modelDir - Default:
${project.build.directory}/wurbel/model
<modelName>
- Type:
java.lang.String - Required:
No - User Property:
tentackle.modelName - Default:
default
<skip>
If not set, defaults to true if packaging is "pom" and the execution is recursive (see
org.tentackle.maven.AbstractTentackleMojo.isSkippedByDefault()
).- Type:
java.lang.Boolean - Required:
No
<sqlDir>
- Type:
java.io.File - Required:
No - User Property:
tentackle.sqlDir - Default:
${project.build.directory}/sql
<title>
Defaults to the maven project's name.
- Type:
java.lang.String - Required:
No - User Property:
tentackle.htmlTitle
<useDropIfExists>
If not supported, a warning will be logged.
Applies to the
migrate and validate goals only.- Type:
boolean - Required:
No
<verbosity>
One of "default", "info" or "debug". Other values are treated as "default".
If not set, debug is turned on by Maven's global debug flag (see command line switch
-X).- Type:
java.lang.String - Required:
No - Default:
${tentackle.verbosity}
Tentackle