Commit Graph

114 Commits

Author SHA1 Message Date
Oliver Drotbohm
3669d3476e GH-1 - Remove obsolete events starter module. 2022-09-26 21:34:43 +02:00
Oliver Drotbohm
f9fc6b0b32 GH-1 - Fix registration of auto-configuration in observability module.
Make sure the auto-configuration file has the correct name.
2022-09-26 20:02:45 +02:00
Oliver Drotbohm
0740edd769 GH-3 - Consistent formatting in schema SQL. 2022-09-20 17:22:58 +02:00
Oliver Drotbohm
e4841e5648 GH-41 - Upgrade to latest Structurizr libraries. 2022-09-20 17:12:43 +02:00
Oliver Drotbohm
86cd30e182 GH-6 - More reference documentation. 2022-09-20 17:09:28 +02:00
Oliver Drotbohm
5f6b82ef2d GH-40 - Switch to C4 component diagrams by default.
We now render the module component diagrams in C4 style by default. Changed the implementation of ApplicationModuleInformation to fallback to the simple module name by default unless fully-qualified module names are enabled.
2022-09-20 17:08:35 +02:00
Oliver Drotbohm
bc2af61c98 GH-39 - Switch to Spring Asciidoctor backend for reference documentation. 2022-09-12 22:22:03 +02:00
Oliver Drotbohm
0c81d9025d GH-36 - Fix invalid named interface reference in ApplicationModule.
0fbf7b introduced a bug in which the named interface referenced by an explicit allowed dependency declaration was accidentally switched to be resolved against the source module, not the target one.
2022-09-12 15:59:58 +02:00
Oliver Drotbohm
2391c758a7 GH-38 - Register Jackson modules available in ApplicationContext in default ObjectMapper. 2022-09-12 15:45:52 +02:00
Oliver Drotbohm
bdb90e9298 GH-37 - Hide internal aggregates and components by default in module canvas.
We now only include exposed types in the module canvas rendered. This can be overridden by calling CanvasOptions.revealInternals().
2022-09-12 15:45:08 +02:00
Oliver Drotbohm
0fbf7b33b1 GH-36 - Better exception message for invalid, explicit module dependency declarations. 2022-08-11 11:29:55 +02:00
Oliver Drotbohm
7e890fd705 GH-36 - Better dependency verification for named interfaces.
We now verify detected dependencies against optionally explicitly defined ones. Those can refer to named interfaces (via the "moduleName :: namedInterfaceName" syntax). If such an allowed dependency is defined, all dependencies towards other named interfaces (also the unnamed one) are rejected.

Some Javadoc polishing.
2022-08-09 16:13:09 +02:00
Oliver Drotbohm
fb23c452cd GH-6 - Moar reference documentation. 2022-07-29 21:15:19 +02:00
Oliver Drotbohm
e84ae4480e GH-1 - Fix current time lookup in MomentsUnitTests. 2022-07-29 00:36:09 +02:00
Oliver Drotbohm
204a6195a4 GH-34 - Initial draft of an example project. 2022-07-29 00:27:18 +02:00
Oliver Drotbohm
ab86417814 GH-6 - More reference documentation.
Application module fundamentals, verification.
2022-07-29 00:20:27 +02:00
Oliver Drotbohm
2c2032e5d9 GH-4 - Add MongoDB starter to BOM. 2022-07-28 19:37:13 +02:00
Oliver Drotbohm
e6350fd3fc GH-3 - Add JDBC starter to BOM. 2022-07-28 19:37:13 +02:00
Oliver Drotbohm
68c11ca214 GH-33 - Avoid throwing IOException from public Documenter API. 2022-07-28 19:37:13 +02:00
Oliver Drotbohm
792efa6051 GH-1 - Polish logging incomplete event publications on shutdown. 2022-07-28 19:37:13 +02:00
Oliver Drotbohm
7cf3892360 GH-20 - Polishing. 2022-07-28 19:37:13 +02:00
Oliver Drotbohm
9a52daa0f6 GH-20 - Polishing. 2022-07-28 16:34:24 +02:00
Oliver Drotbohm
af99902951 GH-29 - Polishing.
Added missing Apache license header to test.
2022-07-28 16:29:37 +02:00
Bjoern Kieling
c2f1f1907d GH-20 - Extend repository with capability to delete all completed publications
Signed-off-by: Dmitry Belyaev <dbelyaev@vmware.com>
2022-07-28 14:21:28 +02:00
Oliver Drotbohm
1b9d27221f GH-6 - Stable anchors for schema appendix in reference documentation. 2022-07-28 12:28:11 +02:00
Oliver Drotbohm
f8e3de1238 GH-6 - Fix structure of the documentation ZIP.
We now render the Asciidoctor documentation into a nested HTML subfolder to be consistent with other project's URL structures.
2022-07-28 12:27:53 +02:00
Oliver Drotbohm
9190c7c97e GH-6 - Fix syntax highlighting in reference docs.
Switch to the correct attribute to set to enable this.
2022-07-28 12:27:04 +02:00
Oliver Drotbohm
945222b72f GH-6 - Allow documentation publication to be triggered manually. 2022-07-28 12:06:30 +02:00
Oliver Drotbohm
af105c8f09 GH-3, GH-6 - Add relation schemas for event publication registry to reference docs. 2022-07-28 12:00:14 +02:00
Bjoern Kieling
1a14e4f9df GH-27 - Remove in-memory implementation of EventPublicationRepository
Signed-off-by: Dmitry Belyaev <dbelyaev@vmware.com>
2022-07-28 11:58:33 +02:00
Oliver Drotbohm
582ad361ae GH-29 - Polishing.
Avoid explicit MySQL database driver dependency to align with Boot. DatabaseSchemaInitializer is now fully immutable, receiving the ResourceLoader in its constructor.
2022-07-28 11:46:21 +02:00
Bjoern Kieling
9b9546f32e GH-29 - Add MySQL support. Introduce DatabaseType to assemble all database type specific code.
Signed-off-by: Dmitry Belyaev <dbelyaev@vmware.com>
2022-07-28 11:33:42 +02:00
Oliver Drotbohm
3ab5072e1e GH-18 - Polishing.
Switch to consistent usage of secrets via environment variables. Remove documentation generation from standard build. Some general POM polishing. A bit of release documentation.
2022-07-28 08:46:11 +02:00
Oliver Drotbohm
0fdabdb9e6 GH-6 - Initial skeleton for project reference documentation. 2022-07-27 22:10:37 +02:00
Oliver Drotbohm
80cf808012 GH-18 - Add GitHub actions workflows for releases. 2022-07-27 20:49:37 +02:00
Oliver Drotbohm
aedd063e3b GH-18 - Setup deployment to Artifactory for general builds.
Tweak build to contain a dedicated ci build profile for Javadoc creation post delombokification. Added an artifactory build profile to set up Artifactory deployment for milestones and snapshots.

Cleanups in sonatype build profile to avoid the definition of a snapshot repository to avoid snapshots accidentally be deployed there.
2022-07-27 19:01:14 +02:00
Oliver Drotbohm
13b83ef947 GH-28 - Consolidate sample and integration tests module. 2022-07-27 14:57:15 +02:00
Oliver Drotbohm
9512c36c32 GH-25 - Polishing. 2022-07-27 13:23:54 +02:00
Dmitry Belyaev
97a5051930 GH-25 - Fix #findByEventAndTargetIdentifier in all repositories to return only incomplete EventPublications. Rename the method accordingly.
Signed-off-by: Björn Kieling <bkieling@vmware.com>
2022-07-27 13:16:11 +02:00
Oliver Drotbohm
3916082d6f GH-17 - Polishing.
Formatting. Nullability constraints.
2022-07-27 13:05:26 +02:00
Dmitry Belyaev
ce1ef8c540 GH-17 - Bootstrap PostgreSQL in a container and execute integration tests against it
Signed-off-by: Björn Kieling <bkieling@vmware.com>
2022-07-27 11:51:48 +02:00
Oliver Drotbohm
32de1846de GH-4 - Add Spring Boot starter for MongoDB event publication registry. 2022-07-26 18:09:07 +02:00
Oliver Drotbohm
48a2686112 GH-4 - Add Spring Boot autoconfiguration for the MongoDB event publication registry. 2022-07-26 18:05:48 +02:00
Oliver Drotbohm
9f5d8ec63b GH-4 - Polishing.
Turn embedded MongoDB test setup into proper bean definitions to make sure databases get started and shut down properly with ApplicationContexts. Previously, the database was held in a static variable shut down after a particular test class had been concluded but bean instances held in the cached (and potentially reused ApplicationContext) were still referring to that already shut down database which prevented then from shutting down properly.
2022-07-26 18:04:24 +02:00
Dmitry Belyaev
314a3823ad GH-4 - Implement MongoDB-based event publication repository
Signed-off-by: Björn Kieling <bkieling@vmware.com>
2022-07-26 11:53:40 +02:00
Oliver Drotbohm
1e295039c4 GH-3 - Add dedicated starter for JDBC-based event publication registry. 2022-07-23 21:53:19 +02:00
Oliver Drotbohm
3899d9d59c GH-3 - Polishing.
A couple of renames in the exposed APIs. MapBasedEventPublicationRepository now uses a a TreeMap again instead of a List (closer to what the original EventPublicationRegistry did).

Cleanups in the JDBC event registry module. Polish pom.xml to minimize dependencies. Removed custom DatabaseType in favor of Boot's DatabaseDriver. Tweaked the auto-configuration of the JDBC module to not even expose a DatabaseSchemaInitializer in the first place to avoid having to wire the boolean flag into the latter.

Cleanups in test cases to avoid code duplication. Move to @JdbcTest to avoid having to depend on Spring Data JDBC.

Enable nullability checks, formatting, Javadoc, author tags, missing license headers.
2022-07-22 22:24:23 +02:00
Dmitry Belyaev
6a4260471e GH-3 - Implement JDBC based repository
Signed-off-by: Björn Kieling <bkieling@vmware.com>
2022-07-21 15:11:28 +02:00
Björn Kieling
913ec7bb4e GH-3 - Refactor events registration to prepare easy addition of new repository types.
- Introduce Repository interface as a customization point
- Get rid of Registry interface by having one generic implementation
- Combine EventPublication and all its subclasses in one domain object
- Make Repository instead of Registry be dependent on EventSerializer

Signed-off-by: Dmitry Belyaev <dbelyaev@vmware.com>
2022-07-21 15:11:28 +02:00
Oliver Drotbohm
5f83f7ac13 GH-13 - Add BOM to ease version handling. 2022-07-21 09:37:01 +02:00