package com.softwaremill.common.cdi.security;
import javax.enterprise.util.Nonbinding;
import javax.interceptor.InterceptorBinding;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* The annotation the is generated by the {@link com.softwaremill.common.cdi.security.SecurityExtension}, which contains
* all security constraints to be checked.
* @author Adam Warski (adam at warski dot org)
*/
@InterceptorBinding
@Target({ ElementType.TYPE, ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
public @interface InterceptSecure {
@Nonbinding
Secure[] value();
@Nonbinding
AllowWithFlag[] flags() default {};
}