Package io.mats3.spring
package io.mats3.spring
Mats3 Spring integration ("SpringConfig"), supplying a set of annotations including
@EnableMats
to enable bean scanning for
@MatsMapping
and @MatsClassMapping
annotations, simplifying use of Mats3 in a Spring context.-
ClassDescriptionA simple convenience replacement for @ComponentScan which excludes any configuration classes employing the special
@ConfigurationForTest
annotation instead of the standard@Configuration
annotation.An "alias" for the @Configuration annotation which is meant to be used on tests' configuration classes - which then is excluded from component scanning if the component scan is usingComponentScanExcludingConfigurationForTest
instead of the ordinaryComponentScan
.Specifies that the annotated method parameter is an incoming Data Transfer Object.Enables Mats "SpringConfig", which is bean-scanning for methods on Spring beans annotated withMatsMapping
,MatsClassMapping
andMatsEndpointSetup
, conceptually inspired by the @EnableWebMvc annotation.A class annotated with this repeatable annotation will become a Mats Endpoint, where an instance of the class itself is the State (STO) object for the Endpoint, and each @Stage
-annotated method on the class is a stage of the Endpoint.Each method in the class that shall correspond to a Stage on the Mats endpoint must be annotated with this@Stage
annotation.A method annotated with this repeatable annotation specifies a method that shall set up a (usually) Multi-Staged Mats Endpoint.A method annotated with this repeatable annotation directly becomes aMats Single-stage Endpoint
or aMats Terminator Endpoint
, depending on whether the method specifies a return type, or is void.TheBeanPostProcessor
-class specified by the@EnableMats
annotation.Thrown if the setup of a Mats Spring endpoint fails.Thrown if the invocation of a@MatsMapping
or@MatsEndpointSetup
annotated method raisesInvocationTargetException
and the underlying exception is not aRuntimeException
.Specifies that the annotated method parameter is an incoming State Transfer Object.