DATAREDIS-186
- Handle a few method signature changes to varargs
- Handle possibility of exec() throwing Exceptions
if ErrorReply received in Redis 2.6
As a convenience when configuring with Java, added another constructor
call that allows setting the delegate and the default listener method
in one line of code.
```java
public MessageListenerAdapter(Object delegate, String defaultListenerMethod) {
this(delegate);
setDefaultListenerMethod(defaultListenerMethod);
}
```
This supports configuring a POJO-based listener with a single step:
```java
@Test
public void testCustomMethodWithAlternateConstructor() throws Exception {
MessageListenerAdapter adapter = new MessageListenerAdapter(target, "customMethod");
adapter.afterPropertiesSet();
adapter.onMessage(STRING_MSG, null);
verify(target).customMethod(PAYLOAD);
}
```
A pure Java configuration bean can now look like this:
```java
@Bean
MessageListenerAdapter listenerAdapter(Receiver receiver) {
return new new MessageListenerAdapter(receiver, "pojoMethod");
}
@Bean
Receiver receiver() {
return new Receiver();
}
```
No longer do we have to A) assign the adapter to a variable and B) call
setDefaultListenerMethod, slimming down pure POJO configuration with pure
Java.
with Redis 2.6
Redis 2.6 responds to unsubscribe requests even if
not subscribed. This results in unread data on the
InputStream on Subscription close if extra
unsubscribe requests are issued. This causes
problems if connection is reused
(as in the case of Jedis pool).
- Only unsubscribe on Subscription close if still
subscribed
- Use dedicated connection for RJC subscriptions,
as RJC makes extra unsubscribe calls on subscriber
close
DATAREDIS-132, DATAREDIS-130, DATAREDIS-152
- Upgrade to fix broken config_get in SRP 0.2
- Fix syntax errors in sort methods
- Fix syntax errors in zRange/zRevRange methods
with offset and count
executed in the tx
DATAREDIS-123
- Close pipeline on exec if not explicitly
opened by user and return results of closePipeline,
not result of exec command
- Close pipeline on discard if not explicitly
opened by user