All Classes and Interfaces
Class
Description
Test utilities to work with aggregates.
ModulithMetadata backed by a Modulithic annotated type.Annotation to customize information of a
Modulith module.An application module.
A collection wrapper for
ApplicationModule.DeclaredDependency instances.The materialized, in other words actually present, dependencies of the current module towards other modules.
A dependency between two
ApplicationModules.Default implementations of
ApplicationModuleDetectionStrategy.Strategy interface to customize which packages are considered module base packages.
Abstraction for low-level module information.
An
ApplicationModuleInformation for the jMolecules Module annotation.An
ApplicationModuleInformation that inspects the ApplicationModule annotation.An interface to be implemented by Spring components that are supposed to be initialized on
ApplicationStartedEvent.An
ApplicationModuleListener is an Async Spring TransactionalEventListener that
runs in a transaction itself.A Spring Boot actuator endpoint to expose the application module structure of a Spring Modulith based application.
Auto-configuration for the
ApplicationModulesEndpoint.Export the structure of
ApplicationModules as JSON.Bootstrap type to make sure we only bootstrap the initialization of a
ApplicationModules instance once per
application class.Bootstraps the module containing the package of the test class annotated with
ApplicationModuleTest.Abstraction of the application runtime environment.
A type that is architecturally relevant, i.e.
An AssertJ-based extension of
PublishedEvents to obtain fluent assertions.A
DocumentationSource that replaces {@code …} or {@link …} blocks into inline code
referencesAn event publication that can be completed.
An
Advisor to decorate TransactionalEventListener annotated methods to mark the previously registered
event publications as completed on successful method execution.MethodInterceptor to trigger the completion of an event publication after a transaction event listener
method has been completed successfully.Represents all
ConfigurationProperties.ConfigurationProperty instances found for the current project.Initializes the DB schema used to store events
A
DomainEvent published on each day.Default implementation of
AssertablePublishedEvents.Default
CompletableEventPublication implementation.A registry to capture event publications to
ApplicationListeners.Default implementation of
PublishedEvents.The type of dependency between
ApplicationModules.Interface to abstract different ways of looking up documentation for code abstractions.
API to create documentation for
ApplicationModules.Options to tweak the rendering of diagrams.
Different diagram styles.
Configuration setting to define whether modules that do not have a relationship to any other module shall be
retained in the diagrams created.
An event publication.
A registry to capture event publications to
ApplicationListeners.Repository to store
EventPublications.A type that represents an event in a system.
Wrapper around
JavaClass that allows creating additional formatted names.A
DomainEvent published on each day.Application configuration to register a Jackson-based
EventSerializer.A Jackson-based
EventSerializer.A
Source backed by an ArchUnit JavaAccess.An abstraction of a Java package.
JDBC-based repository to store
EventPublications.JPA entity to represent event publications.
Auto-configuration for JPA based event publication.
Repository to store
EventPublications.Helper to render a
Map as JSON.An Exception carrying information about a missing runtime dependency to be analyzed by
MissingRuntimeDependencyFailureAnalyzer.Brave-specific auto configuration.
An unconditional auto-configuration registering an
ImportBeanDefinitionRegistrar to customize both the entity
scan and auto-configuration packages to the packages defined by the ModuleTestExecution in the application
context.A
BeanPostProcessor that decorates beans exposed by application modules with an interceptor that registers
module entry and exit to create tracing spans for those invocations.Defines a Spring Boot application to follow the Modulith structuring conventions.
Defines a Spring Boot application to follow the Modulith structuring conventions.
Core component to publish passage-of-time events.
Auto-configuration for
Moments.Configuration properties for
Moments.The granularity of events to publish.
A MongoDB Document to represent event publications.
Autoconfiguration for MongoDB event publication repository.
Repository to store
EventPublications in a MongoDB.A
DomainEvent published on the last day of the month.A named interface into an
ApplicationModule.Annotation to mark a package as named interface of a
ApplicationModule (either implicit or explicitly
annotated).A collection of
NamedInterfaces.Represents a type in an
ObservedModule.An
ApplicationEventMulticaster to register EventPublications in an EventPublicationRegistry
so that potentially failing transactional event listeners can get re-invoked upon application restart or via a
schedule.First-class collection to work with transactional event listeners, i.e.
Identifier for a publication target.
All Spring application events fired during the test execution.
All application events of a given type that were fired during a test execution.
AssertJ
Assert for PublishedEvents.JUnit 5
Extension for standalone usage without ApplicationModuleTest.Provides instances of
PublishedEvents as test method parameters.A logical
Quarter of the year.A
DomainEvent published once a quarter has passed.A DSL to define integration testing scenarios for application modules.
JUnit
ParameterResolver for Scenario.A quarter that can be shifted to start at a configurable
Month.A
Source of some type, bean definition etc.A
DocumentationSource that uses metadata generated by Spring Auto REST Docs' Javadoc Doclet.A Spring bean type.
ApplicationRuntime implementation based on an ApplicationContext and a class that's annotated with
SpringBootApplication.Creates a new
ModulithMetadata representing the defaults of Modulithic but without the annotation
present.Auto-configuration to register a
SpringBootApplicationRuntime and ApplicationModulesRuntime as Spring
Bean.Auto-configuration to react to ArchUnit missing on the runtime classpath.
Utility methods to work with test
ApplicationModules.Extension of
Moments to publicly expose methods to shift time.Value type to gather and report architectural violations.
A
DomainEvent published if a week has passed.A
DomainEvent published on the last day of the year.