Client configuration¶
Client configuration represented at this file.
Injecting client properties:
private final ClientProperties clientProperties;
@Autowired
public ClientConfiguration(ClientProperties clientProperties) {
this.clientProperties = clientProperties;
}
Current iVIS client:
@Bean(name = "clientInformation")
public AuthorizationCodeResourceDetails ivisClient() {
IvisAuthorizationCodeResourceDetails client = new IvisAuthorizationCodeResourceDetails();
String userAuthorizationUrl = clientProperties.getApiServerAddress() + clientProperties.getUserAuthorizationRelativeUri();
String accessTokenUrl = clientProperties.getApiServerAddress() + clientProperties.getAccessTokenRelativeUri();
client.setClientId(clientProperties.getClientId());
client.setClientSecret(clientProperties.getClientSecret());
client.setUserAuthorizationUri(userAuthorizationUrl);
client.setAccessTokenUri(accessTokenUrl);
return client;
}
Client context for service invocation:
@Bean
public OAuth2ClientContext clientContext() {
return new DefaultOAuth2ClientContext();
}
Service factory for creating service classes:
@Bean
public ProxyIvisServiceFactory ivisServiceFactory() {
String apiUrl = clientProperties.getApiServerAddress() + clientProperties.getApiRelativeUri();
return new ProxyIvisServiceFactory(apiUrl, clientContext(), ivisClient());
}