Wiki
Clone wikitentackle / modules
Tentackle Modules
Tentackle is a modular framework. It consists of 3 kinds of maven modules as shown in the diagram below:
- build-time modules and maven plugins
- runtime modules
- common modules for both build- and runtime
All artifacts are on maven central.
There is also a maven bom (bill of materials), a maven archetype and two modules for TestNG support not shown in the diagram.
Build- and Runtime
tentackle-common
Common classes and resources necessary for build- and runtime. The most important are:
- essential annotations such as
@Analyze
- additional datatypes
- bundle support
- module support (JPMS)
- service API
See the java docs for more details.
tentackle-sql
Low-level database backend abstraction layer. See the java docs for more details.
Runtime
tentackle-core
The core module of the framework with the following packages:
- apt: annotation processors
- bind: binding API
- daemon: daemon and thread handling
- io: I/O support, mainly network related
- log: logging API (see pluggable logging backends below)
- misc: miscellaneous classes
- prefs: preferences API (database persisted preferences)
- reflect: reflection, dynamic proxy, interceptor, class mapping support
- script: scripting API (see pluggable scripting languages below)
- task: background tasks and dispatchers
- validate: validation API
See the java docs for more details.
tentackle-session
Interfaces for the session handling and supporting classes.
The interfaces are implemented in tentackle-database
.
See the java docs
for more details.
tentackle-pdo
Interfaces and supporting classes for the persistent domain object layer. Contains the following packages:
- app: basic application lifecycle support
- apt: annotation processors for PDOs and operations
- ns: number source API
- pdo: interfaces and supporting classes for the PDO layer
- security: security interfaces and API for the PDO layer
The interfaces are implemented in tentackle-persistence
.
See the java docs
for more details.
tentackle-database
Implements tentackle-session
. Injected at runtime.
See the java docs
for more details.
tentackle-persistence
Implements the persistence part of tentackle-pdo
. Injected at runtime.
See the java docs
for more details.
tentackle-domain
Implements the domain part of tentackle-pdo
. Injected at runtime.
See the java docs
for more details.
tentackle-update
Auto-update feature for Tentackle clients based on jlink images
created by the tentackle-jlink-maven-plugin
.
See the java docs
for more details.
tentackle-fx
JavaFX components, container, annotations, factories and binding. See the java docs for more details.
tentackle-fx-rdc
Rich desktop client framework based on JavaFX using PDOs and operations. See the java docs for more details.
tentackle-fx-rdc-poi
Pluggable Apache POI extension for tentackle-fx-rdc
.
See the java docs
for more details.
tentackle-fx-rdc-update
FX client UI for tentackle-update
.
See the java docs
for more details.
tentackle-log-log4j
Pluggable logging adapter for Log4J (major release 1). See the java docs for more details.
tentackle-log-log4j2v
Pluggable logging adapter for Log4J (major release 2). See the java docs for more details.
tentackle-log-slf4j
Pluggable logging adapter for SLF4J. See the java docs for more details.
tentackle-script-groovy
Pluggable scripting language adapter for Groovy. See the java docs for more details.
tentackle-script-ruby
Pluggable scripting language adapter for JRuby. See the java docs for more details.
tentackle-script-jsr
Pluggable scripting language adapter for JSR223 (and Graalvm). See the java docs for more details.
tentackle-i18n
Pluggable I18N bundle support with database persistence. See the java docs for more details.
Build Time
tentackle-build-support
Basic support for the build process, independent of maven. See the java docs for more details.
tentackle-maven-support
Maven support for the build process. Used by all Tentackle maven plugins. See the java docs for more details.
tentackle-maven-plugin
Main tentackle plugin. Analyzes the source code for annotations directly or
indirectly annotated with @Analyze
and invokes the corresponding
AnalyzeHandlers. Fundamental for the ServiceFactory and its ServiceFinders.
See the plugin docs
for more details and other goals.
tentackle-check-maven-plugin
Maven plugin to check tentackle resource bundles and validation annotations. See the plugin docs for more details.
tentackle-sql-maven-plugin
Maven plugin to generate the DDL statements according to the model and to generate SQL-code to migrate the database to the current model. See the plugin docs for more details.
tentackle-i18n-maven-plugin
Maven pluging to synchronize the database persisted I18N bundles with the project's resource bundles. See the plugin docs for more details.
tentackle-jlink-maven-plugin
Maven plugin to create self-contained applications via jlink or jpackage. See the plugin docs for more details.
tentackle-wizard-maven-plugin
Maven plugin providing a interactive wizard to generate the source files for PDOs and operations. See the plugin docs for more details.
tentackle-model
API for the domain model of the application. Used by the wurblets, the PDO wizard and the SQL plugin. See the java docs for more details.
tentackle-wurblets
Wurblets to generate code for the PDO- and operation interfaces and some other boilerplate code such as DTOs. See the java docs for more details.
tentackle-persistence-wurblets
Wurblets to generate code for the PDO- and operation implementation. See the java docs for more details.
Updated