Module com.github.rvesse.airline
Class RestrictionRegistry
java.lang.Object
com.github.rvesse.airline.restrictions.factories.RestrictionRegistry
Central registry for restrictions
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Map
<Class<? extends Annotation>, ArgumentsRestrictionFactory> private static final Map
<Class<? extends Annotation>, GlobalRestrictionFactory> private static boolean
private static final Map
<Class<? extends Annotation>, OptionRestrictionFactory> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
addArgumentsRestriction
(Class<? extends Annotation> cls, ArgumentsRestrictionFactory factory) static void
addGlobalRestriction
(Class<? extends Annotation> cls, GlobalRestrictionFactory factory) static void
addOptionRestriction
(Class<? extends Annotation> cls, OptionRestrictionFactory factory) static <T extends Annotation>
ArgumentsRestrictiongetArgumentsRestriction
(Class<? extends Annotation> cls, T annotation) static Set
<Class<? extends Annotation>> static <T extends Annotation>
GlobalRestrictiongetGlobalRestriction
(Class<? extends Annotation> cls, T annotation) static Set
<Class<? extends Annotation>> static <T extends Annotation>
OptionRestrictiongetOptionRestriction
(Class<? extends Annotation> cls, T annotation) static Set
<Class<? extends Annotation>> (package private) static void
init()
Initializes the base set of restrictions using theServiceLoader
mechanism(package private) static <T> void
loadRestrictions
(Class<T> cls, Function<T, List<Class<? extends Annotation>>> annotationsSelector, Map<Class<? extends Annotation>, T> registry) static void
reset()
Resets the registry to its default state
-
Field Details
-
OPTION_RESTRICTION_FACTORIES
private static final Map<Class<? extends Annotation>,OptionRestrictionFactory> OPTION_RESTRICTION_FACTORIES -
ARGUMENT_RESTRICTION_FACTORIES
private static final Map<Class<? extends Annotation>,ArgumentsRestrictionFactory> ARGUMENT_RESTRICTION_FACTORIES -
GLOBAL_RESTRICTION_FACTORIES
private static final Map<Class<? extends Annotation>,GlobalRestrictionFactory> GLOBAL_RESTRICTION_FACTORIES -
init
private static volatile boolean init
-
-
Constructor Details
-
RestrictionRegistry
public RestrictionRegistry()
-
-
Method Details
-
loadRestrictions
static <T> void loadRestrictions(Class<T> cls, Function<T, List<Class<? extends Annotation>>> annotationsSelector, Map<Class<? extends Annotation>, T> registry) -
init
static void init()Initializes the base set of restrictions using theServiceLoader
mechanism -
reset
public static void reset()Resets the registry to its default state -
getOptionRestrictionAnnotationClasses
-
addOptionRestriction
public static void addOptionRestriction(Class<? extends Annotation> cls, OptionRestrictionFactory factory) -
getOptionRestriction
public static <T extends Annotation> OptionRestriction getOptionRestriction(Class<? extends Annotation> cls, T annotation) -
addArgumentsRestriction
public static void addArgumentsRestriction(Class<? extends Annotation> cls, ArgumentsRestrictionFactory factory) -
getArgumentsRestrictionAnnotationClasses
-
getArgumentsRestriction
public static <T extends Annotation> ArgumentsRestriction getArgumentsRestriction(Class<? extends Annotation> cls, T annotation) -
getGlobalRestrictionAnnotationClasses
-
addGlobalRestriction
public static void addGlobalRestriction(Class<? extends Annotation> cls, GlobalRestrictionFactory factory) -
getGlobalRestriction
public static <T extends Annotation> GlobalRestriction getGlobalRestriction(Class<? extends Annotation> cls, T annotation)
-