Remove afterPropertiesSet method to avoid circular reference

The RestTemplate created in afterPropertiesSet was only used in one place and that was only called by one bean so moving the creation to the method should not effect anything.
This commit is contained in:
Ryan Baxter
2021-09-08 12:16:26 -04:00
parent 116bcef709
commit d8dbd3c31b
2 changed files with 5 additions and 12 deletions

View File

@@ -22,7 +22,6 @@ import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.cloud.config.server.environment.ConfigTokenProvider;
import org.springframework.cloud.config.server.environment.VaultEnvironmentProperties;
import org.springframework.cloud.config.server.environment.VaultEnvironmentProperties.AuthenticationMethod;
@@ -54,7 +53,7 @@ import org.springframework.web.util.UriComponentsBuilder;
* @author Scott Frederick
*/
@Configuration
public class SpringVaultClientConfiguration extends AbstractVaultConfiguration implements InitializingBean {
public class SpringVaultClientConfiguration extends AbstractVaultConfiguration {
private static final String VAULT_PROPERTIES_PREFIX = "spring.cloud.config.server.vault.";
@@ -62,8 +61,6 @@ public class SpringVaultClientConfiguration extends AbstractVaultConfiguration i
private final ConfigTokenProvider configTokenProvider;
private RestOperations externalRestOperations;
private final Log log = LogFactory.getLog(getClass());
private final List<SpringVaultClientAuthenticationProvider> authProviders;
@@ -76,11 +73,6 @@ public class SpringVaultClientConfiguration extends AbstractVaultConfiguration i
this.authProviders = authProviders;
}
@Override
public void afterPropertiesSet() {
this.externalRestOperations = new RestTemplate(clientHttpRequestFactoryWrapper().getClientHttpRequestFactory());
}
@Override
public VaultEndpoint vaultEndpoint() {
@@ -173,10 +165,12 @@ public class SpringVaultClientConfiguration extends AbstractVaultConfiguration i
throw new UnsupportedOperationException("No Vault client authentication providers are configured");
}
RestTemplate externalOperations = new RestTemplate(
clientHttpRequestFactoryWrapper().getClientHttpRequestFactory());
for (SpringVaultClientAuthenticationProvider authProvider : this.authProviders) {
if (authProvider.supports(this.vaultProperties)) {
return authProvider.getClientAuthentication(this.vaultProperties, restOperations(),
this.externalRestOperations);
return authProvider.getClientAuthentication(this.vaultProperties, restOperations(), externalOperations);
}
}

View File

@@ -335,7 +335,6 @@ class SpringVaultClientConfigurationTests {
private SpringVaultClientConfiguration getConfiguration(VaultEnvironmentProperties properties) {
SpringVaultClientConfiguration configuration = new SpringVaultClientConfiguration(properties, () -> null,
authProviders);
configuration.afterPropertiesSet();
configuration.setApplicationContext(applicationContext);
return configuration;
}