config/src/main/java/org/springframework/security/config/annotation/AbstractConfiguredSecurityBuilder.java
@SuppressWarnings("unchecked")
	public <C extends SecurityConfigurerAdapter<O, B>> C apply(C configurer)
			throws Exception {
		configurer.addObjectPostProcessor(objectPostProcessor);
		configurer.setBuilder((B) this);
		add(configurer);
		return configurer;
	}
@SuppressWarnings("unchecked")
	public <C extends SecurityConfigurerAdapter<O, B>> C apply(C configurer)
			throws Exception {
		configurer.addObjectPostProcessor(objectPostProcessor);
		configurer.setBuilder((B) this);
		add(configurer);
		return configurer;
	}
Applies a {@link SecurityConfigurerAdapter} to this {@link SecurityBuilder} and
invokes {@link SecurityConfigurerAdapter#setBuilder(SecurityBuilder)}.

@param configurer
@return the {@link SecurityConfigurerAdapter} for further customizations
@throws Exception