docs: @Override
  	public String[] selectImports(AnnotationMetadata metadata) {
  
  		Map<String, Object> attributes = metadata.getAnnotationAttributes(EnableHypermediaSupport.class.getName());
  
  		Collection<MediaType> types = attributes == null ? Collections.emptyList()
  				: Arrays.stream((HypermediaType[]) attributes.get("type")) //
  						.flatMap(it -> it.getMediaTypes().stream()) //
  						.collect(Collectors.toList());
  
  		Collection<MediaTypeConfigurationProvider> configurationProviders = SpringFactoriesLoader.loadFactories(
  				MediaTypeConfigurationProvider.class, HypermediaConfigurationImportSelector.class.getClassLoader());
  
  		// No additional filtering needed.
  		if (types.isEmpty()) {
  			return configurationProviders.toArray(new String[0]);
  		}
  
  		// Filter the ones supporting the given media types
  		return configurationProviders.stream() //
  				.filter(it -> it.supportsAny(types)) //
  				.map(MediaTypeConfigurationProvider::getConfiguration) //
  				.map(Class::getName) //
  				.toArray(String[]::new);
  	}