If there is no @ConcernFor annotation on any of the member fields of a Modifier, or if there are more than one member field annotated with this annotation, then there will be a RuntimeException thrown.
NOTE: The @ConcernFor annotation should typically not be used. Instead, extend the class ConcernOf<mixintype> for effectively the same thing.
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.qi4j.api.injection.InjectionScope;
/**
* This annotation is required once in each Concern, to mark the
* field where the next element in the call sequence should be
* injected.
* <p/>
* The type of the field must be of the same type as the Concern
* itself, or an InvocationHandler.
* <p/>
*/
@Retention( RetentionPolicy.RUNTIME )
@Target( { ElementType.FIELD, ElementType.PARAMETER } )
@Documented
@InjectionScope
public @interface ConcernFor
{
}