Github user subhankarb commented on the issue:

    https://github.com/apache/flink/pull/1813
  
    @tzulitai, @mjsax  thank you very much for your valuable feedback.
    1) `additionalKey` was supposed to one time declaration for `SORTED_SET` 
and `HASH`. For `HASH`
    it is the value of hash name and `SORTED_SET` it is the name of the set. I 
assume it would not change once it declares. 
    
    2) `JedisPoolConfig`/ `JedisClusterConfig` were not `Serializable` so i 
needed a wrapper class for that. @mjsax there is a story for a source for 
Redis, so `RedisSinkConfig` would not be a valid one as the config would be 
same for sink and source. Thats why i make the `JedisPoolConfig`/ 
`JedisClusterConfig` ctor private. So that user forced to use the builder class 
to avoid confusion. 
    
    3) When i started with this i thought it was obvious that if i use PUBSUB 
in sink, i would always use it for publish and if i use this in source i would 
always use it for subscribe  :) .  
    
    4 + 5 ) We can group the command and dataType like.
    `public enum RedisCommand {
    LPUSH(RedisDataType.LIST),
    RPUSH(RedisDataType.LIST);
    private RedisDataType redisDataType;
    RedisCommand(RedisDataType redisDataType) {
      this.redisDataType = redisDataType;
    }
    public boolean isInRedisDataType(RedisDataType redisDataType) {
      return this.redisDataType == redisDataType;
    }
    }`
    And in `RedisDataTypeDescription` we can extract the command . So that in 
future we can add new command. 



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to