@Override
public List<NamedType> findSubtypes(Annotated a) {
Pluggable pluggable = a.getAnnotation(Pluggable.class);
if (pluggable != null) {
PluginMap pluginMap = pluginRegistry.byCategory().get(pluggable.value());
List<NamedType> result = new ArrayList<>(pluginMap.asBiMap().size());
for (Map.Entry<String, Class<?>> type : pluginMap.asBiMap().entrySet()) {
result.add(new NamedType(type.getValue(), type.getKey()));
}
return result;
}