Skip to content

Commit c9c118a

Browse files
authored
byte[] conversion for numbers in Params classes (#2019)
This would also be required when upgrading to JDK 1.8.
1 parent 1bebbcd commit c9c118a

File tree

3 files changed

+13
-3
lines changed

3 files changed

+13
-3
lines changed

src/main/java/redis/clients/jedis/params/GeoRadiusParam.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public byte[][] getByteParams(byte[]... args) {
6565

6666
if (contains(COUNT)) {
6767
byteParams.add(SafeEncoder.encode(COUNT));
68-
byteParams.add(Protocol.toByteArray((Integer) getParam(COUNT)));
68+
byteParams.add(Protocol.toByteArray((int) getParam(COUNT)));
6969
}
7070

7171
if (contains(ASC)) {

src/main/java/redis/clients/jedis/params/Params.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import java.util.Map;
66
import java.util.Map.Entry;
77

8+
import redis.clients.jedis.Protocol;
89
import redis.clients.jedis.util.SafeEncoder;
910

1011
public abstract class Params {
@@ -29,6 +30,14 @@ public byte[][] getByteParams() {
2930
if (value != null) {
3031
if (value instanceof byte[]) {
3132
byteParams.add((byte[]) value);
33+
} else if (value instanceof Boolean) {
34+
byteParams.add(Protocol.toByteArray((boolean) value));
35+
} else if (value instanceof Integer) {
36+
byteParams.add(Protocol.toByteArray((int) value));
37+
} else if (value instanceof Long) {
38+
byteParams.add(Protocol.toByteArray((long) value));
39+
} else if (value instanceof Double) {
40+
byteParams.add(Protocol.toByteArray((double) value));
3241
} else {
3342
byteParams.add(SafeEncoder.encode(String.valueOf(value)));
3443
}

src/main/java/redis/clients/jedis/params/SetParams.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import java.util.ArrayList;
44

5+
import redis.clients.jedis.Protocol;
56
import redis.clients.jedis.util.SafeEncoder;
67

78
public class SetParams extends Params {
@@ -71,11 +72,11 @@ public byte[][] getByteParams(byte[]... args) {
7172

7273
if (contains(EX)) {
7374
byteParams.add(SafeEncoder.encode(EX));
74-
byteParams.add(SafeEncoder.encode(String.valueOf(getParam(EX))));
75+
byteParams.add(Protocol.toByteArray((int) getParam(EX)));
7576
}
7677
if (contains(PX)) {
7778
byteParams.add(SafeEncoder.encode(PX));
78-
byteParams.add(SafeEncoder.encode(String.valueOf(getParam(PX))));
79+
byteParams.add(Protocol.toByteArray((long) getParam(PX)));
7980
}
8081

8182
return byteParams.toArray(new byte[byteParams.size()][]);

0 commit comments

Comments
 (0)