New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ISSUE #11449] Support RESP3 for codec-redis #11448
base: 4.1
Are you sure you want to change the base?
Conversation
codec-redis/src/main/java/io/netty/handler/codec/redis/RedisDecoder.java
Outdated
Show resolved
Hide resolved
Please fix check style:
|
codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractCollectionRedisMessage.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractCollectionRedisMessage.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractCollectionRedisMessage.java
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractCollectionRedisMessage.java
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractMapRedisMessage.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractMapRedisMessage.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/AggregatedRedisMessage.java
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/RedisArrayAggregator.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/RedisMessageType.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractCollectionRedisMessage.java
Outdated
Show resolved
Hide resolved
public abstract class AbstractCollectionRedisMessage extends AbstractReferenceCounted | ||
implements AggregatedRedisMessage { | ||
|
||
protected Collection<RedisMessage> children; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
private final ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The sub class ArrayRedisMessage
and SetRedisMessage
need access this children
field on the abstract method children()
for cast to List<Message>
or Set<Message>
, so it can't be private? but I had made it final
codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractMapRedisMessage.java
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/AbstractNumberRedisMessage.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/AggregatedHeaderRedisMessage.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/RedisMapAggregator.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/SetHeaderRedisMessage.java
Outdated
Show resolved
Hide resolved
codec-redis/src/main/java/io/netty/handler/codec/redis/SetHeaderRedisMessage.java
Outdated
Show resolved
Hide resolved
* Set of <a href="https://github.com/antirez/RESP3/blob/master/spec.md">RESP3</a>. | ||
*/ | ||
@UnstableApi | ||
public class SetRedisMessage extends AbstractCollectionRedisMessage { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
final
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thear are a predefined EMPTY_INSTANCE
of SetRedisMessage so that it can't not be final and need a default contructor.
But i not sure the EMPTY_INSTANCE
is necessary?
codec-redis/src/main/java/io/netty/handler/codec/redis/SetRedisMessage.java
Show resolved
Hide resolved
for review
Did we miss this? |
hi, I'm still here and I fix all review. But this module will be removed out of netty? If netty want to suppor RESP3, what can i do? |
Will this PR be merged in 2023? |
#11449
Motivation:
Modifications:
Add new types of NullRedisMessage, BooleanRedisMessage
Add new number types of DoubleRedisMessage, BigNumberRedisMessage
Add BulkErrorStringHeaderRedisMessage & FullBulkErrorStringRedisMessage for support blob error. (Just extend BulkStringHeaderRedisMessage & FullBulkStringRedisMessage)
Extract AbstractNumberRedisMessage to unify IntegerRedisMessage & DoubleRedisMessage & BigNumberRedisMessage
Modify RedisEncoder & RedisDecoder to support new types
Modify RedisBulkStringAggregator to support blob error message
Add unit tests
Fix some typo
Support encode/decode Set types redis message & Extract Collection redis message for Array types and Set types
Add RedisMapAggregator for support decode Map types message
Support Verbatim string and Push types message
(Todo) support Attribute, Streamed strings and Streamed aggregated data types
Result: