code: public static void attach(Environment environment) {
  		Assert.isInstanceOf(ConfigurableEnvironment.class, environment);
  		MutablePropertySources sources = ((ConfigurableEnvironment) environment)
  				.getPropertySources();
  		PropertySource<?> attached = sources.get(ATTACHED_PROPERTY_SOURCE_NAME);
  		if (attached != null && attached.getSource() != sources) {
  			sources.remove(ATTACHED_PROPERTY_SOURCE_NAME);
  			attached = null;
  		}
  		if (attached == null) {
  			sources.addFirst(new ConfigurationPropertySourcesPropertySource(
  					ATTACHED_PROPERTY_SOURCE_NAME,
  					new SpringConfigurationPropertySources(sources)));
  		}
  	}
docs: Attach a {@link ConfigurationPropertySource} support to the specified
  {@link Environment}. Adapts each {@link PropertySource} managed by the environment
  to a {@link ConfigurationPropertySource} and allows classic
  {@link PropertySourcesPropertyResolver} calls to resolve using
  {@link ConfigurationPropertyName configuration property names}.
  <p>
  The attached resolver will dynamically track any additions or removals from the
  underlying {@link Environment} property sources.
  @param environment the source environment (must be an instance of
  {@link ConfigurableEnvironment})
  @see #get(Environment)