Introduce JedisInvoker.

We now use JedisInvoker to call Jedis and Pipeline methods for synchronous, pipelining, and transactional execution models. JedisInvoker captures the method invocation as functional utility and allows conversion of results:

Long result = invoker.just(BinaryJedis::geoadd, MultiKeyPipelineBase:geoadd, key, point.getX(), point.getY(), member);

Closes #1951
Original Pull Request: #1960
This commit is contained in:
Mark Paluch
2021-02-04 14:39:43 +01:00
committed by Christoph Strobl
parent f723bd386c
commit c7eef8fcff
16 changed files with 1494 additions and 2626 deletions

View File

@@ -216,11 +216,6 @@ public class JedisConnectionPipelineIntegrationTests extends AbstractConnectionP
@Disabled
public void testScriptFlush() {}
@Test
public void testInfoBySection() {
assertThatExceptionOfType(UnsupportedOperationException.class).isThrownBy(super::testInfoBySection);
}
@Test // DATAREDIS-269
public void clientSetNameWorksCorrectly() {
assertThatExceptionOfType(UnsupportedOperationException.class).isThrownBy(super::clientSetNameWorksCorrectly);

View File

@@ -28,10 +28,6 @@ import org.junit.jupiter.api.Test;
*/
public class JedisConnectionPipelineTxIntegrationTests extends JedisConnectionTransactionIntegrationTests {
@Disabled("Jedis issue: Pipeline tries to return String instead of List<String>")
@Test
public void testGetConfig() {}
@Test
@Disabled
public void testRestoreBadData() {}