001package com.identityworksllc.iiq.common.plugin.annotations; 002 003import java.lang.annotation.ElementType; 004import java.lang.annotation.Retention; 005import java.lang.annotation.RetentionPolicy; 006import java.lang.annotation.Target; 007 008/** 009 * Indicates that the API method ought to authorize the user only if they 010 * are authorized by all of the {@link AuthorizedBy} sub-elements. 011 */ 012@Retention(RetentionPolicy.RUNTIME) 013@Target({ElementType.TYPE, ElementType.METHOD}) 014public @interface AuthorizeAll { 015 /** 016 * The list of authorizations 017 * @return The list of authorizations 018 */ 019 AuthorizedBy[] value(); 020}