У меня есть архитектура, в которой Enum реализует интерфейс.
public interface Animal {
String getLatinName();
}
А затем перечисление с некоторыми подтипами
@Component //Something like this is what I am after
public enum Feline implements Animal {
CAT("Felis Catus"),
LYNX("Lynx Lynx");
}
Это позволяет зависимым библиотекам расширять экземпляры, но для этого мне потребуется механизм, подобный следующему, чтобы я мог собрать все они с помощью ComponentScan
@Autowire
Set<Animal> animals; //Injecting all occurrences of Animal instances
Для этого подхода мне нужно сделать все экземпляры моего enum Feline доступными для сканирования