001package io.avaje.inject; 002 003import java.lang.annotation.Retention; 004import java.lang.annotation.Target; 005 006import static java.lang.annotation.ElementType.FIELD; 007import static java.lang.annotation.ElementType.PARAMETER; 008import static java.lang.annotation.RetentionPolicy.RUNTIME; 009 010/** 011 * Marks an <code>Map<String, T> </code> field/parameter to receive a map of beans keyed 012 * by qualifier name. 013 * 014 * <pre>{@code 015 * class CrewMate { 016 * 017 * private final Map<String, Tasks> taskMap; 018 * 019 * @Inject 020 * CrewMate(@QualifiedMap Map<String, Tasks> taskMap) { 021 * this.taskMap = taskMap; 022 * } 023 * 024 * } 025 * }</pre> 026 */ 027@Target({PARAMETER, FIELD}) 028@Retention(RUNTIME) 029public @interface QualifiedMap { 030}