Skip to content
Snippets Groups Projects
Commit e7e0eb55 authored by David Diederich's avatar David Diederich
Browse files

Merge remote-tracking branch 'origin/master' into dependency-upgrade

Conflicts:
	pom.xml
	provider/partition-azure/pom.xml
parents 1a538b7e 9d6ad4dd
No related branches found
No related tags found
2 merge requests!229Merge branch 'dependency-upgrade' into 'master',!159Upgrade First Party Library Dependencies for Release 0.14
Pipeline #101303 passed with warnings
package org.opengroup.osdu.partition.provider.azure.di;
import com.azure.security.keyvault.secrets.SecretClient;
import com.lambdaworks.redis.ClientOptions;
import com.lambdaworks.redis.SocketOptions;
import org.opengroup.osdu.azure.KeyVaultFacade;
import org.opengroup.osdu.core.common.cache.RedisCache;
import org.opengroup.osdu.azure.cache.RedisAzureCache;
import org.opengroup.osdu.azure.di.RedisAzureConfiguration;
import org.opengroup.osdu.partition.model.PartitionInfo;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
......@@ -13,88 +10,30 @@ import org.springframework.context.annotation.Configuration;
import javax.inject.Named;
import java.util.List;
import java.util.concurrent.TimeUnit;
@Configuration
public class RedisConfig {
@Value("${redis.port}")
private int port;
@Bean
@Named("REDIS_HOST")
public String redisHost(SecretClient kv) {
return KeyVaultFacade.getSecretWithValidation(kv, "redis-hostname");
}
@Bean
@Named("REDIS_PASSWORD")
public String redisPassword(SecretClient kv) {
return KeyVaultFacade.getSecretWithValidation(kv, "redis-password");
}
@Configuration
@ConditionalOnExpression(value = "'${cache.provider}' == 'redis' && '${redis.ssl.enabled:true}'")
static class SslConfig {
@Value("${redis.port}")
private int port;
@Value("${redis.expiration}")
private int expiration;
@Value("${redis.database}")
private int database;
@Value("${redis.connection.timeout}")
private long timeout;
@Value("${redis.expiration}")
private int expiration;
@Bean
public RedisCache<String, PartitionInfo> partitionServiceCache(@Named("REDIS_HOST") String host, @Named("REDIS_PASSWORD") String password) {
ClientOptions clientOptions = ClientOptions.builder()
.socketOptions(SocketOptions.builder().connectTimeout(timeout, TimeUnit.SECONDS).build())
.build();
return new RedisCache<>(host, port, password, expiration, database, clientOptions, String.class, PartitionInfo.class);
}
@Value("${redis.database}")
private int database;
@Bean
public RedisCache<String, List<String>> partitionListCache(@Named("REDIS_HOST") String host, @Named("REDIS_PASSWORD") String password) {
ClientOptions clientOptions = ClientOptions.builder()
.socketOptions(SocketOptions.builder().connectTimeout(timeout, TimeUnit.SECONDS).build())
.build();
return new RedisCache(host, port, password, expiration, database, clientOptions, String.class, List.class);
}
@Value("${redis.connection.timeout}")
private long timeout;
@Bean
public RedisAzureCache<String, PartitionInfo> partitionServiceCache() {
RedisAzureConfiguration redisAzureConfiguration = new RedisAzureConfiguration(database, expiration, port, timeout);
return new RedisAzureCache<>(String.class, PartitionInfo.class, redisAzureConfiguration);
}
@Configuration
@ConditionalOnExpression(value = "'${cache.provider}' == 'redis' && !'${redis.ssl.enabled:true}'")
static class NoSslConfig {
@Value("${redis.port}")
private int port;
@Value("${redis.expiration}")
private int expiration;
@Value("${redis.database}")
private int database;
@Value("${redis.connection.timeout}")
private long timeout;
@Bean
public RedisCache<String, PartitionInfo> partitionServiceCache(@Named("REDIS_HOST") String host) {
ClientOptions clientOptions = ClientOptions.builder()
.socketOptions(SocketOptions.builder().connectTimeout(timeout, TimeUnit.SECONDS).build())
.build();
return new RedisCache<>(host, port, expiration, database, clientOptions, String.class, PartitionInfo.class);
}
@Bean
public RedisCache<String, List<String>> partitionListCache(@Named("REDIS_HOST") String host) {
ClientOptions clientOptions = ClientOptions.builder()
.socketOptions(SocketOptions.builder().connectTimeout(timeout, TimeUnit.SECONDS).build())
.build();
return new RedisCache(host, port, expiration, database, clientOptions, String.class, List.class);
}
@Bean
public RedisAzureCache<String, List<String>> partitionListCache() {
RedisAzureConfiguration redisAzureConfiguration = new RedisAzureConfiguration(database, expiration, port, timeout);
return new RedisAzureCache(String.class, List.class, redisAzureConfiguration);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment