Annotation Interface ExclusiveOptionals
@MinMuleVersion("4.1")
@Target(TYPE)
@Retention(RUNTIME)
@Documented
public @interface ExclusiveOptionals
This annotation marks that all the
Optional Parameters contained in the annotated class have an exclusive
relationship among each other. The exclusive relation stands for "from all the parameters declared in this class, only one can
be present at any time" This annotation doesn't override the optionality of the Parameters. The required parameter will
remain required and the exclusivity condition imposed by this annotation would not affect them. If the case is given in which
one of the Optional Parameters must be present (no matter which one), then
isOneRequired() must be set to true.- Since:
- 1.0
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionbooleanEnforces that one of the parameters must be set at any given time
-
Element Details
-
isOneRequired
boolean isOneRequiredEnforces that one of the parameters must be set at any given time- Default:
- false
-