DATAREDIS-956 - Add readFrom(…) override to LettucePoolingClientConfigurationBuilder.
Original pull request: #446.
This commit is contained in:
committed by
Mark Paluch
parent
f2a0623d6e
commit
e3b903ce36
@@ -16,6 +16,7 @@
|
||||
package org.springframework.data.redis.connection.lettuce;
|
||||
|
||||
import io.lettuce.core.ClientOptions;
|
||||
import io.lettuce.core.ReadFrom;
|
||||
import io.lettuce.core.resource.ClientResources;
|
||||
|
||||
import java.time.Duration;
|
||||
@@ -156,6 +157,16 @@ public interface LettucePoolingClientConfiguration extends LettuceClientConfigur
|
||||
return this;
|
||||
}
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
* @see org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration.LettuceClientConfigurationBuilder#readFrom(io.lettuce.core.ReadFrom)
|
||||
*/
|
||||
@Override
|
||||
public LettucePoolingClientConfigurationBuilder readFrom(ReadFrom readFrom) {
|
||||
super.readFrom(readFrom);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the {@link GenericObjectPoolConfig} used by the driver.
|
||||
*
|
||||
|
||||
@@ -18,6 +18,7 @@ package org.springframework.data.redis.connection.lettuce;
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
|
||||
import io.lettuce.core.ClientOptions;
|
||||
import io.lettuce.core.ReadFrom;
|
||||
import io.lettuce.core.TimeoutOptions;
|
||||
import io.lettuce.core.resource.ClientResources;
|
||||
|
||||
@@ -83,4 +84,24 @@ public class LettucePoolingClientConfigurationUnitTests {
|
||||
assertThat(configuration.getShutdownTimeout()).isEqualTo(Duration.ofHours(2));
|
||||
assertThat(configuration.getShutdownQuietPeriod()).isEqualTo(Duration.ofMinutes(5));
|
||||
}
|
||||
|
||||
@Test // DATAREDIS-956
|
||||
public void shouldConfigureReadFrom() {
|
||||
|
||||
ClientOptions clientOptions = ClientOptions.create();
|
||||
ClientResources sharedClientResources = LettuceTestClientResources.getSharedClientResources();
|
||||
GenericObjectPoolConfig poolConfig = new GenericObjectPoolConfig();
|
||||
|
||||
LettucePoolingClientConfiguration configuration = LettucePoolingClientConfiguration.builder() //
|
||||
.poolConfig(poolConfig) //
|
||||
.clientOptions(clientOptions) //
|
||||
.clientResources(sharedClientResources) //
|
||||
.readFrom(ReadFrom.MASTER_PREFERRED) //
|
||||
.build();
|
||||
|
||||
assertThat(configuration.getPoolConfig()).isEqualTo(poolConfig);
|
||||
assertThat(configuration.getClientOptions()).contains(clientOptions);
|
||||
assertThat(configuration.getClientResources()).contains(sharedClientResources);
|
||||
assertThat(configuration.getReadFrom().orElse(ReadFrom.MASTER)).isEqualTo(ReadFrom.MASTER_PREFERRED);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user