1
0
mirror of synced 2026-05-22 21:33:16 +00:00

Interpret Expression Templates by Default

Closes gh-17763
This commit is contained in:
Josh Cummings
2025-08-18 15:45:57 -06:00
parent 4da98dde2b
commit c45bc384da
@@ -31,8 +31,6 @@ import java.util.concurrent.ConcurrentHashMap;
*/
public final class SecurityAnnotationScanners {
private static final Map<Class<? extends Annotation>, SecurityAnnotationScanner<? extends Annotation>> uniqueScanners = new ConcurrentHashMap<>();
private static final Map<Class<? extends Annotation>, SecurityAnnotationScanner<? extends Annotation>> uniqueTemplateScanners = new ConcurrentHashMap<>();
private static final Map<List<Class<? extends Annotation>>, SecurityAnnotationScanner<? extends Annotation>> uniqueTypesScanners = new ConcurrentHashMap<>();
@@ -48,8 +46,7 @@ public final class SecurityAnnotationScanners {
* @return the default {@link SecurityAnnotationScanner}
*/
public static <A extends Annotation> SecurityAnnotationScanner<A> requireUnique(Class<A> type) {
return (SecurityAnnotationScanner<A>) uniqueScanners.computeIfAbsent(type,
(t) -> new UniqueSecurityAnnotationScanner<>(type));
return requireUnique(type, new AnnotationTemplateExpressionDefaults());
}
/**
@@ -68,9 +65,6 @@ public final class SecurityAnnotationScanners {
*/
public static <A extends Annotation> SecurityAnnotationScanner<A> requireUnique(Class<A> type,
AnnotationTemplateExpressionDefaults templateDefaults) {
if (templateDefaults == null) {
return requireUnique(type);
}
return (SecurityAnnotationScanner<A>) uniqueTemplateScanners.computeIfAbsent(type,
(t) -> new ExpressionTemplateSecurityAnnotationScanner<>(t, templateDefaults));
}