Consistently use InvalidDataAccessApiUsageException to signal that an operation is not allowed/supported in the current mode of operation.
Replace converter objects with conversion within the actual method to remove indirections.
Original Pull Request: #2287
We now try to eagerly apply a custom converter when reading Redis properties in the MappingRedisConverter before considering type hints from the hash.
We require type hints to properly restore the target type for a hash entry as Redis data is all byte arrays, so a simple String needs a type hint before we can load it back into an e.g. Object-typed property. Subtypes of properties (such as ZoneRegion for ZoneId) are sometimes not associated with a converter as only the parent type (ZoneId) is associated with a converter. Trying to convert the value into the subtype directly through our ConversionService would fail in that case.
Closes#2307
Currently, `RedisOperations#convertAndSend` is void event though the underlying `RedisPubSubCommands#publish` returns a `Long` that represents the number of clients receiving the published message (see https://redis.io/commands/publish).
This commit updates `RedisOperations#convertAndSend` to return the number of clients that received the message.
Closes#2209
Original pull request: #2225.
DefaultedRedis…Connection is now deprecated to help with migration towards segregated/commands interface usage. The connection now exposes a commands() object providing access to RedisCommands so that a composite commands object can be accessed independently from the connection.
Redis…Commands provider represent entry points to obtain segregated command interfaces.
See: #2273
Original Pull Request: #2276
StreamInfo subtypes now implement Streamable. Switch from stream mapping to for/each style to avoid Java Stream creation.
Introduce getRequired(…) methods to improve nullability experience.
Original Pull Request: #2276
The API exposes now the renamed command terminology (replica) only and no longer the deprecated one.
Closes: #2195
See: #2274
Original Pull Request: #2276
Update since tags. Move FlushOption converters to client-specific converters. Use method-references where possible.
See #2187
Original pull request: #2190.