docs: public void removeFactory(ConfigurationsProvider factory) {
  		if (logger.isLoggable(Level.FINER)) {
  			logger.finer("Removing factory: " + factory);
  		}
  		// this is to avoid adding items to the cache that were removed while
  		// iterating
  		synchronized (map) {
  			providers.remove(factory);
  			map.clear();
  		}
  	}