in flink-connector-redis/src/main/java/org/apache/flink/streaming/connectors/redis/common/mapper/RedisCommandDescription.java [68:98]
public RedisCommandDescription(RedisCommand redisCommand, String additionalKey, Integer additionalTTL) {
Objects.requireNonNull(redisCommand, "Redis command type can not be null");
this.redisCommand = redisCommand;
this.additionalKey = additionalKey;
this.additionalTTL = additionalTTL;
if (redisCommand.getRedisDataType() == RedisDataType.HASH ||
redisCommand.getRedisDataType() == RedisDataType.SORTED_SET) {
if (additionalKey == null) {
throw new IllegalArgumentException("Hash and Sorted Set should have additional key");
}
}
if (redisCommand.equals(RedisCommand.SETEX)) {
if (additionalTTL == null) {
throw new IllegalArgumentException("SETEX command should have time to live (TTL)");
}
}
if (redisCommand.equals(RedisCommand.INCRBY_EX)) {
if (additionalTTL == null) {
throw new IllegalArgumentException("INCRBY_EX command should have time to live (TTL)");
}
}
if (redisCommand.equals(RedisCommand.DESCRBY_EX)) {
if (additionalTTL == null) {
throw new IllegalArgumentException("INCRBY_EX command should have time to live (TTL)");
}
}
}