001package sting;
002
003import java.lang.annotation.Documented;
004import java.lang.annotation.ElementType;
005import java.lang.annotation.Retention;
006import java.lang.annotation.RetentionPolicy;
007import java.lang.annotation.Target;
008
009/**
010 * Annotate an interface to declare that it will be used in an injector-oriented integration surface.
011 * This annotation is a top-level Sting processor entrypoint used for validation only.
012 *
013 * <p>Sting tolerates {@link Named} on methods declared by a type annotated with
014 * {@link InjectorFragment}, but does not treat the type as a binding contributor and does not
015 * process the methods as injector outputs.</p>
016 *
017 * @see ActAsStingComponent
018 */
019@Documented
020@Retention( RetentionPolicy.RUNTIME )
021@Target( ElementType.TYPE )
022public @interface InjectorFragment
023{
024}