Skip to content

Commit 5a687c0

Browse files
christophstroblmp911de
authored andcommitted
Update RedisCommands.
Add missing commands. Closes: #3191 Original pull request: #3193
1 parent 72a83cc commit 5a687c0

File tree

2 files changed

+84
-7
lines changed

2 files changed

+84
-7
lines changed

src/main/java/org/springframework/data/redis/core/RedisCommand.java

Lines changed: 83 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,86 +45,137 @@ public enum RedisCommand {
4545
// -- A
4646
APPEND("rw", 2, 2), //
4747
AUTH("rw", 1, 1), //
48+
4849
// -- B
4950
BGREWRITEAOF("r", 0, 0, "bgwriteaof"), //
5051
BGSAVE("r", 0, 0), //
5152
BITCOUNT("r", 1, 3), //
53+
BITFIELD("rw", 1), //
54+
BITFIELD_RO("r", 1),
5255
BITOP("rw", 3), //
5356
BITPOS("r", 2, 4), //
57+
BLMOVE("rw", 4), //
58+
BLMPOP("rw", 4), //
5459
BLPOP("rw", 2), //
5560
BRPOP("rw", 2), //
5661
BRPOPLPUSH("rw", 3), //
62+
BZMPOP("rw", 3), //
63+
BZPOPMAX("rw", 2), //
64+
BZPOPMIN("rw", 2), //
65+
5766
// -- C
67+
CLIENT_GETREDIR("r", 0, 0), //
68+
CLIENT_ID("r", 0, 0), //
69+
CLIENT_INFO("r", 0, 0), //
5870
CLIENT_KILL("rw", 1, 1), //
5971
CLIENT_LIST("r", 0, 0), //
6072
CLIENT_GETNAME("r", 0, 0), //
6173
CLIENT_PAUSE("rw", 1, 1), //
74+
CLIENT_SETINFO("w", 1), //
6275
CLIENT_SETNAME("w", 1, 1), //
76+
CLIENT_NO_EVICT("w", 1, 1, "client no-evict"), //
77+
CLIENT_NO_TOUCH("w", 1, 1, "client no-touch"), //
78+
CLIENT_TRACKING("rw", 1), //
6379
CONFIG_GET("r", 1, 1, "getconfig"), //
6480
CONFIG_REWRITE("rw", 0, 0), //
6581
CONFIG_SET("w", 2, 2, "setconfig"), //
6682
CONFIG_RESETSTAT("w", 0, 0, "resetconfigstats"), //
83+
COPY("rw", 2), //
84+
6785
// -- D
6886
DBSIZE("r", 0, 0), //
6987
DECR("w", 1, 1), //
7088
DECRBY("w", 2, 2), //
7189
DEL("rw", 1), //
7290
DISCARD("rw", 0, 0), //
7391
DUMP("r", 1, 1), //
92+
7493
// -- E
7594
ECHO("r", 1, 1), //
7695
EVAL("rw", 2), //
96+
EVAL_RO("r", 2), //
7797
EVALSHA("rw", 2), //
98+
EVALSHA_RO("r", 2), //
7899
EXEC("rw", 0, 0), //
79100
EXISTS("r", 1, 1), //
80101
EXPIRE("rw", 2, 2), //
81102
EXPIREAT("rw", 2, 2), //
103+
EXPIRETIME("r", 1), //
82104
// -- F
105+
FCALL("rw", 2), //
106+
FCALL_RO("r", 2), //
83107
FLUSHALL("w", 0, 0), //
84108
FLUSHDB("w", 0, 0), //
109+
FUNCTION_DELETE("w", 1), //
110+
FUNCTION_DUMP("w", 0, 0), //
111+
FUNCTION_FLUSH("w", 0, 0), //
112+
FUNCTION_KILL("w", 0, 0), //
113+
85114
// -- G
86115
GET("r", 1, 1), //
87116
GETBIT("r", 2, 2), //
117+
GETDEL("rw", 1), //
118+
GETEX("rw", 1), //
88119
GETRANGE("r", 3, 3), //
89120
GETSET("rw", 2, 2), //
90121
GEOADD("w", 3), //
91122
GEODIST("r", 2), //
92123
GEOHASH("r", 2), //
93124
GEOPOS("r", 2), //
94-
GEORADIUS("r", 4), //
95-
GEORADIUSBYMEMBER("r", 3), //
125+
GEORADIUS("rw", 4), //
126+
GEORADIUS_RO("r", 4), //
127+
GEORADIUSBYMEMBER("rw", 3), //
128+
GEORADIUSBYMEMBER_RO("r", 3), //
129+
GEOSEARCH("r", 1), //
130+
GEOSEARCH_STORE("rw", 1), //
131+
96132
// -- H
97133
HDEL("rw", 2), //
134+
HELLO("rw", 0, 0), //
98135
HEXISTS("r", 2, 2), //
99136
HGET("r", 2, 2), //
100137
HGETALL("r", 1, 1), //
138+
HGETDEL("rw", 2), //
139+
HGETEX("rw", 2), //
101140
HINCRBY("rw", 3, 3), //
102141
HINCBYFLOAT("rw", 3, 3), //
103142
HKEYS("r", 1), //
104143
HLEN("r", 1), //
105144
HMGET("r", 2), //
106145
HMSET("w", 3), //
146+
HPOP("rw", 3),
107147
HSET("w", 3, 3), //
108148
HSETNX("w", 3, 3), //
109149
HVALS("r", 1, 1), //
150+
HSCAN("r", 2), //
151+
HSTRLEN("r", 2), //
152+
110153
// -- I
111154
INCR("rw", 1), //
155+
INCRBY("rw", 2, 2), //
112156
INCRBYFLOAT("rw", 2, 2), //
113157
INFO("r", 0), //
158+
114159
// -- K
115160
KEYS("r", 1), //
161+
116162
// -- L
163+
LCS("r", 2), //
117164
LASTSAVE("r", 0), //
118165
LINDEX("r", 2, 2), //
119166
LINSERT("rw", 4, 4), //
120167
LLEN("r", 1, 1), //
168+
LMOVE("rw", 2), //
169+
LMPOP("rw", 2), //
121170
LPOP("rw", 1, 1), //
171+
LPOS("r", 2), //
122172
LPUSH("rw", 2), //
123173
LPUSHX("rw", 2), //
124174
LRANGE("r", 3, 3), //
125175
LREM("rw", 3, 3), //
126176
LSET("w", 3, 3), //
127177
LTRIM("w", 3, 3), //
178+
128179
// -- M
129180
MGET("r", 1), //
130181
MIGRATE("rw", 0), //
@@ -133,19 +184,26 @@ public enum RedisCommand {
133184
MSET("w", 2), //
134185
MSETNX("w", 2), //
135186
MULTI("rw", 0, 0), //
187+
136188
// -- P
137189
PERSIST("rw", 1, 1), //
138190
PEXPIRE("rw", 2, 2), //
139191
PEXPIREAT("rw", 2, 2), //
192+
PEXPIRETIME("r", 1), //
193+
PFADD("w", 10), //
194+
PFCOUNT("r", 1), //
195+
PFMERGE("rw", 2), //
140196
PING("r", 0, 0), //
141197
PSETEX("w", 3), //
142198
PSUBSCRIBE("r", 1), //
143199
PTTL("r", 1, 1), //
144200
// -- Q
145201
QUIT("rw", 0, 0), //
202+
146203
// -- R
147204
RANDOMKEY("r", 0, 0), //
148-
205+
READONLY("w", 0, 0), //
206+
READWRITE("w", 0, 0), //
149207
RENAME("w", 2, 2), //
150208
RENAMENX("w", 2, 2), //
151209
REPLICAOF("w", 2), //
@@ -154,9 +212,11 @@ public enum RedisCommand {
154212
RPOPLPUSH("rw", 2, 2), //
155213
RPUSH("rw", 2), //
156214
RPUSHX("rw", 2, 2), //
215+
157216
// -- S
158217
SADD("rw", 2), //
159218
SAVE("rw", 0, 0), //
219+
SCAN("r", 1), //
160220
SCARD("r", 1, 1), //
161221
SCRIPT_EXISTS("r", 1), //
162222
SCRIPT_FLUSH("rw", 0, 0), //
@@ -172,28 +232,47 @@ public enum RedisCommand {
172232
SETRANGE("rw", 3, 3), //
173233
SHUTDOWN("rw", 0), //
174234
SINTER("r", 1), //
235+
SINTERCARD("r", 1), //
175236
SINTERSTORE("rw", 2), //
176237
SISMEMBER("r", 2), //
177238
SLAVEOF("w", 2), //
178239
SLOWLOG("rw", 1), //
179240
SMEMBERS("r", 1, 1), //
180241
SMOVE("rw", 3, 3), //
181242
SORT("rw", 1), //
243+
SORT_RO("r", 1), //
182244
SPOP("rw", 1, 1), //
183245
SRANDMEMBER("r", 1, 1), //
184246
SREM("rw", 2), //
247+
SSCAN("r", 1), //
185248
STRLEN("r", 1, 1), //
186249
SUBSCRIBE("rw", 1), //
250+
SUBSTR("r", 3), //
187251
SUNION("r", 1), //
188252
SUNIONSTORE("rw ", 2), //
189253
SYNC("rw", 0, 0), //
254+
190255
// -- T
191256
TIME("r", 0, 0), //
192257
TTL("r", 1, 1), //
193258
TYPE("r", 1, 1), //
259+
194260
// -- U
261+
UNLINK("w", 1), //
195262
UNSUBSCRIBE("rw", 0), //
196263
UNWATCH("rw", 0, 0), //
264+
265+
// -- V
266+
VADD("w", 3), //
267+
VCARD("r", 1), //
268+
VDIM("r", 1), //
269+
VEMB("r", 2), //
270+
VISMEMBER("r", 2), //
271+
VLINKS("r", 2, 3), //
272+
VRANDMEMBER("r", 1, 2), //
273+
VREM("w", 2), //
274+
VSIM("w", 1), //
275+
197276
// -- W
198277
WATCH("rw", 1), //
199278
// -- Z
@@ -213,10 +292,8 @@ public enum RedisCommand {
213292
ZREVRANK("r", 2, 2), //
214293
ZSCORE("r", 2, 2), //
215294
ZUNIONSTORE("rw", 3), //
216-
SCAN("r", 1), //
217-
SSCAN("r", 2), //
218-
HSCAN("r", 2), //
219295
ZSCAN("r", 2), //
296+
220297
// -- UNKNOWN / DEFAULT
221298
UNKNOWN("rw", -1);
222299

src/test/java/org/springframework/data/redis/core/RedisCommandUnitTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ void commandRequiresExactNumberOfArgumentsIsCorrect() {
135135

136136
Arrays.stream(RedisCommand.values())
137137
.forEach(command -> assertThat(command.requiresExactNumberOfArguments())
138-
.describedAs("Redis command [%s] failed requires exact arguments check").isEqualTo(
138+
.describedAs("Redis command [%s] failed requires exact arguments check".formatted(command.name())).isEqualTo(
139139
ReflectionTestUtils.getField(command, "minArgs") == ReflectionTestUtils.getField(command, "maxArgs")));
140140
}
141141

0 commit comments

Comments
 (0)