package org.needle4j.annotation; import static java.lang.annotation.ElementType.FIELD; import static java.lang.annotation.RetentionPolicy.RUNTIME; import java.lang.annotation.Retention; import java.lang.annotation.Target; /** * Is used to inject an instance into a specific {@link ObjectUnderTest} * instance. * */ @Target({ FIELD }) @Retention(RUNTIME) public @interface InjectInto { /** * Id of the object under test. This is the field name of the component, by * default. You can specify the id within the * <code>@{@link ObjectUnderTest}</code> annotation. * * @see ObjectUnderTest#id() */ String targetComponentId(); /** * (Optional) fieldName of the injection target * * <p> * Default is the assignable type */ String fieldName() default ""; }