@@ -8,113 +8,149 @@ public class RedisBloomProtocol {
8
8
9
9
public enum BloomFilterCommand implements ProtocolCommand {
10
10
11
- RESERVE ("BF.RESERVE" ),
12
- ADD ("BF.ADD" ),
13
- MADD ("BF.MADD" ),
14
- EXISTS ("BF.EXISTS" ),
15
- MEXISTS ("BF.MEXISTS" ),
16
- INSERT ("BF.INSERT" ),
17
- SCANDUMP ("BF.SCANDUMP" ),
18
- LOADCHUNK ("BF.LOADCHUNK" ),
19
- CARD ("BF.CARD" ),
20
- INFO ("BF.INFO" );
11
+ RESERVE ("BF.RESERVE" , true ),
12
+ ADD ("BF.ADD" , true ),
13
+ MADD ("BF.MADD" , true ),
14
+ EXISTS ("BF.EXISTS" , false ),
15
+ MEXISTS ("BF.MEXISTS" , false ),
16
+ INSERT ("BF.INSERT" , true ),
17
+ SCANDUMP ("BF.SCANDUMP" , true ),
18
+ LOADCHUNK ("BF.LOADCHUNK" , true ),
19
+ CARD ("BF.CARD" , false ),
20
+ INFO ("BF.INFO" , false );
21
21
22
22
private final byte [] raw ;
23
+ private final boolean isWriteCommand ;
23
24
24
- private BloomFilterCommand (String alt ) {
25
+ private BloomFilterCommand (String alt , boolean isWriteCommand ) {
25
26
raw = SafeEncoder .encode (alt );
27
+ this .isWriteCommand = isWriteCommand ;
26
28
}
27
29
28
30
@ Override
29
31
public byte [] getRaw () {
30
32
return raw ;
31
33
}
34
+
35
+ @ Override
36
+ public boolean isWriteCommand () {
37
+ return isWriteCommand ;
38
+ }
32
39
}
33
40
34
41
public enum CuckooFilterCommand implements ProtocolCommand {
35
42
36
- RESERVE ("CF.RESERVE" ), //
37
- ADD ("CF.ADD" ), //
38
- ADDNX ("CF.ADDNX" ), //
39
- INSERT ("CF.INSERT" ), //
40
- INSERTNX ("CF.INSERTNX" ), //
41
- EXISTS ("CF.EXISTS" ), //
42
- MEXISTS ("CF.MEXISTS" ), //
43
- DEL ("CF.DEL" ), //
44
- COUNT ("CF.COUNT" ), //
45
- SCANDUMP ("CF.SCANDUMP" ), //
46
- LOADCHUNK ("CF.LOADCHUNK" ), //
47
- INFO ("CF.INFO" );
43
+ RESERVE ("CF.RESERVE" , true ), //
44
+ ADD ("CF.ADD" , true ), //
45
+ ADDNX ("CF.ADDNX" , true ), //
46
+ INSERT ("CF.INSERT" , true ), //
47
+ INSERTNX ("CF.INSERTNX" , true ), //
48
+ EXISTS ("CF.EXISTS" , false ), //
49
+ MEXISTS ("CF.MEXISTS" , false ), //
50
+ DEL ("CF.DEL" , true ), //
51
+ COUNT ("CF.COUNT" , false ), //
52
+ SCANDUMP ("CF.SCANDUMP" , true ), //
53
+ LOADCHUNK ("CF.LOADCHUNK" , true ), //
54
+ INFO ("CF.INFO" , false );
48
55
49
56
private final byte [] raw ;
57
+ private final boolean isWriteCommand ;
50
58
51
- private CuckooFilterCommand (String alt ) {
59
+ private CuckooFilterCommand (String alt , boolean isWriteCommand ) {
52
60
raw = SafeEncoder .encode (alt );
61
+ this .isWriteCommand = isWriteCommand ;
53
62
}
54
63
55
64
@ Override
56
65
public byte [] getRaw () {
57
66
return raw ;
58
67
}
68
+
69
+ @ Override
70
+ public boolean isWriteCommand () {
71
+ return isWriteCommand ;
72
+ }
59
73
}
60
74
61
75
public enum CountMinSketchCommand implements ProtocolCommand {
62
76
63
- INITBYDIM ("CMS.INITBYDIM" ), //
64
- INITBYPROB ("CMS.INITBYPROB" ), //
65
- INCRBY ("CMS.INCRBY" ), //
66
- QUERY ("CMS.QUERY" ), //
67
- MERGE ("CMS.MERGE" ), //
68
- INFO ("CMS.INFO" );
77
+ INITBYDIM ("CMS.INITBYDIM" , true ), //
78
+ INITBYPROB ("CMS.INITBYPROB" , true ), //
79
+ INCRBY ("CMS.INCRBY" , true ), //
80
+ QUERY ("CMS.QUERY" , false ), //
81
+ MERGE ("CMS.MERGE" , true ), //
82
+ INFO ("CMS.INFO" , false );
69
83
70
84
private final byte [] raw ;
85
+ private final boolean isWriteCommand ;
71
86
72
- private CountMinSketchCommand (String alt ) {
87
+ private CountMinSketchCommand (String alt , boolean isWriteCommand ) {
73
88
raw = SafeEncoder .encode (alt );
89
+ this .isWriteCommand = isWriteCommand ;
74
90
}
75
91
76
92
@ Override
77
93
public byte [] getRaw () {
78
94
return raw ;
79
95
}
96
+ @ Override
97
+ public boolean isWriteCommand () {
98
+ return isWriteCommand ;
99
+ }
80
100
}
81
101
82
102
public enum TopKCommand implements ProtocolCommand {
83
103
84
- RESERVE ("TOPK.RESERVE" ),
85
- ADD ("TOPK.ADD" ),
86
- INCRBY ("TOPK.INCRBY" ),
87
- QUERY ("TOPK.QUERY" ),
88
- LIST ("TOPK.LIST" ),
89
- INFO ("TOPK.INFO" );
104
+ RESERVE ("TOPK.RESERVE" , true ),
105
+ ADD ("TOPK.ADD" , true ),
106
+ INCRBY ("TOPK.INCRBY" , true ),
107
+ QUERY ("TOPK.QUERY" , false ),
108
+ LIST ("TOPK.LIST" , false ),
109
+ INFO ("TOPK.INFO" , false );
90
110
91
111
private final byte [] raw ;
112
+ private final boolean isWriteCommand ;
92
113
93
- private TopKCommand (String alt ) {
114
+ private TopKCommand (String alt , boolean isWriteCommand ) {
94
115
raw = SafeEncoder .encode (alt );
116
+ this .isWriteCommand = isWriteCommand ;
95
117
}
96
118
97
119
@ Override
98
120
public byte [] getRaw () {
99
121
return raw ;
100
122
}
123
+
124
+ @ Override
125
+ public boolean isWriteCommand () {
126
+ return isWriteCommand ;
127
+ }
101
128
}
102
129
103
130
public enum TDigestCommand implements ProtocolCommand {
104
131
105
- CREATE , INFO , ADD , RESET , MERGE , CDF , QUANTILE , MIN , MAX , TRIMMED_MEAN ,
106
- RANK , REVRANK , BYRANK , BYREVRANK ;
132
+ CREATE (true ), INFO (false ), ADD (true ), RESET (true ), MERGE (true ), CDF (false ),
133
+ QUANTILE (false ), MIN (false ), MAX (false ), TRIMMED_MEAN (false ),
134
+ RANK (false ), REVRANK (false ), BYRANK (false ), BYREVRANK (false );
107
135
108
136
private final byte [] raw ;
109
137
110
- private TDigestCommand () {
138
+ private final boolean isWriteCommand ;
139
+
140
+ private TDigestCommand (boolean isWriteCommand ) {
111
141
raw = SafeEncoder .encode ("TDIGEST." + name ());
142
+ this .isWriteCommand = isWriteCommand ;
112
143
}
113
144
114
145
@ Override
115
146
public byte [] getRaw () {
116
147
return raw ;
117
148
}
149
+
150
+ @ Override
151
+ public boolean isWriteCommand () {
152
+ return isWriteCommand ;
153
+ }
118
154
}
119
155
120
156
public enum RedisBloomKeyword implements Rawable {
0 commit comments