@Target(value=TYPE) @Retention(value=RUNTIME) @Documented public @interface ExclusiveOptionals
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.| Modifier and Type | Optional Element and Description |
|---|---|
boolean |
isOneRequired
Enforces that one of the parameters must be set at any given time
|
Copyright © 2017 MuleSoft, Inc.. All rights reserved.