Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Format after #1988 and #1968 #2078

Closed
wants to merge 6 commits into from
Closed
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
177 changes: 85 additions & 92 deletions src/main/java/redis/clients/jedis/BuilderFactory.java
Expand Up @@ -13,6 +13,7 @@
import redis.clients.jedis.util.SafeEncoder;

public final class BuilderFactory {

sazzad16 marked this conversation as resolved.
Show resolved Hide resolved
public static final Builder<Double> DOUBLE = new Builder<Double>() {
@Override
public Double build(Object data) {
Expand All @@ -32,6 +33,7 @@ public String toString() {
return "double";
}
};

sazzad16 marked this conversation as resolved.
Show resolved Hide resolved
public static final Builder<Boolean> BOOLEAN = new Builder<Boolean>() {
@Override
public Boolean build(Object data) {
Expand All @@ -43,10 +45,11 @@ public String toString() {
return "boolean";
}
};

sazzad16 marked this conversation as resolved.
Show resolved Hide resolved
public static final Builder<byte[]> BYTE_ARRAY = new Builder<byte[]>() {
@Override
public byte[] build(Object data) {
return ((byte[]) data); // deleted == 1
return (byte[]) data;
}

@Override
Expand All @@ -65,8 +68,24 @@ public Long build(Object data) {
public String toString() {
return "long";
}
};

public static final Builder<List<Long>> LONG_LIST = new Builder<List<Long>>() {
@Override
@SuppressWarnings("unchecked")
public List<Long> build(Object data) {
if (null == data) {
return null;
}
return (List<Long>) data;
}

@Override
public String toString() {
return "List<Long>";
}
};

public static final Builder<String> STRING = new Builder<String>() {
@Override
public String build(Object data) {
Expand All @@ -77,8 +96,8 @@ public String build(Object data) {
public String toString() {
return "string";
}

};

public static final Builder<List<String>> STRING_LIST = new Builder<List<String>>() {
@Override
@SuppressWarnings("unchecked")
Expand All @@ -102,60 +121,42 @@ public List<String> build(Object data) {
public String toString() {
return "List<String>";
}

};
public static final Builder<Map<String, String>> STRING_MAP = new Builder<Map<String, String>>() {
@Override
@SuppressWarnings("unchecked")
public Map<String, String> build(Object data) {
final List<byte[]> flatHash = (List<byte[]>) data;
final Map<String, String> hash = new HashMap<>(flatHash.size()/2, 1);
final Iterator<byte[]> iterator = flatHash.iterator();
while (iterator.hasNext()) {
hash.put(SafeEncoder.encode(iterator.next()), SafeEncoder.encode(iterator.next()));
}

return hash;
}

@Override
public String toString() {
return "Map<String, String>";
}

};

public static final Builder<Map<String, String>> PUBSUB_NUMSUB_MAP = new Builder<Map<String, String>>() {
public static final Builder<Set<String>> STRING_SET = new Builder<Set<String>>() {
@Override
@SuppressWarnings("unchecked")
public Map<String, String> build(Object data) {
final List<Object> flatHash = (List<Object>) data;
final Map<String, String> hash = new HashMap<>(flatHash.size()/2, 1);
final Iterator<Object> iterator = flatHash.iterator();
while (iterator.hasNext()) {
hash.put(SafeEncoder.encode((byte[]) iterator.next()),
String.valueOf((Long) iterator.next()));
public Set<String> build(Object data) {
if (null == data) {
return null;
}

return hash;
List<byte[]> l = (List<byte[]>) data;
final Set<String> result = new HashSet<String>(l.size(), 1);
for (final byte[] barray : l) {
if (barray == null) {
result.add(null);
} else {
result.add(SafeEncoder.encode(barray));
}
}
return result;
}

@Override
public String toString() {
return "PUBSUB_NUMSUB_MAP<String, String>";
return "Set<String>";
}

};

public static final Builder<Set<String>> STRING_SET = new Builder<Set<String>>() {
public static final Builder<Set<String>> STRING_ZSET = new Builder<Set<String>>() {
@Override
@SuppressWarnings("unchecked")
public Set<String> build(Object data) {
if (null == data) {
return null;
}
List<byte[]> l = (List<byte[]>) data;
final Set<String> result = new HashSet<>(l.size(), 1);
final Set<String> result = new LinkedHashSet<String>(l.size(), 1);
for (final byte[] barray : l) {
if (barray == null) {
result.add(null);
Expand All @@ -168,9 +169,28 @@ public Set<String> build(Object data) {

@Override
public String toString() {
return "Set<String>";
return "ZSet<String>";
}
};

public static final Builder<Map<String, String>> STRING_MAP = new Builder<Map<String, String>>() {
@Override
@SuppressWarnings("unchecked")
public Map<String, String> build(Object data) {
final List<byte[]> flatHash = (List<byte[]>) data;
final Map<String, String> hash = new HashMap<String, String>(flatHash.size()/2, 1);
final Iterator<byte[]> iterator = flatHash.iterator();
while (iterator.hasNext()) {
hash.put(SafeEncoder.encode(iterator.next()), SafeEncoder.encode(iterator.next()));
}

return hash;
}

@Override
public String toString() {
return "Map<String, String>";
}
};

public static final Builder<List<byte[]>> BYTE_ARRAY_LIST = new Builder<List<byte[]>>() {
Expand Down Expand Up @@ -236,30 +256,23 @@ public String toString() {

};

public static final Builder<Set<String>> STRING_ZSET = new Builder<Set<String>>() {
public static final Builder<Tuple> TUPLE = new Builder<Tuple>() {
@Override
@SuppressWarnings("unchecked")
public Set<String> build(Object data) {
if (null == data) {
public Tuple build(Object data) {
if (null == data) { // *Never* null. Still it doesn't hurt to be safe for future.
return null;
}
List<byte[]> l = (List<byte[]>) data;
final Set<String> result = new LinkedHashSet<>(l.size(), 1);
for (final byte[] barray : l) {
if (barray == null) {
result.add(null);
} else {
result.add(SafeEncoder.encode(barray));
}
}
return result;
Iterator<byte[]> i = l.iterator();
if (i.hasNext()) return new Tuple(i.next(), DOUBLE.build(i.next()));
return null;
}

@Override
public String toString() {
return "ZSet<String>";
return "Tuple";
}

};

public static final Builder<Set<Tuple>> TUPLE_ZSET = new Builder<Set<Tuple>>() {
Expand All @@ -282,27 +295,29 @@ public Set<Tuple> build(Object data) {
public String toString() {
return "ZSet<Tuple>";
}

};

public static final Builder<Tuple> TUPLE = new Builder<Tuple>() {
public static final Builder<Map<String, String>> PUBSUB_NUMSUB_MAP = new Builder<Map<String, String>>() {
@Override
@SuppressWarnings("unchecked")
public Tuple build(Object data) {
List<byte[]> l = (List<byte[]>) data; // never null
if (l.isEmpty()) {
return null;
public Map<String, String> build(Object data) {
final List<Object> flatHash = (List<Object>) data;
final Map<String, String> hash = new HashMap<String, String>(flatHash.size()/2, 1);
final Iterator<Object> iterator = flatHash.iterator();
while (iterator.hasNext()) {
hash.put(SafeEncoder.encode((byte[]) iterator.next()),
String.valueOf((Long) iterator.next()));
}
return new Tuple(l.get(0), DOUBLE.build(l.get(1)));

return hash;
}

@Override
public String toString() {
return "Tuple";
return "PUBSUB_NUMSUB_MAP<String, String>";
}

};

public static final Builder<Object> EVAL_RESULT = new Builder<Object>() {

@Override
Expand Down Expand Up @@ -367,16 +382,8 @@ public List<GeoCoordinate> build(Object data) {
if (null == data) {
return null;
}
return interpretGeoposResult((List<Object>) data);
}

@Override
public String toString() {
return "List<GeoCoordinate>";
}

private List<GeoCoordinate> interpretGeoposResult(List<Object> responses) {
List<GeoCoordinate> responseCoordinate = new ArrayList<>(responses.size());
List<Object> responses = (List<Object>) data;
List<GeoCoordinate> responseCoordinate = new ArrayList<GeoCoordinate>(responses.size());
for (Object response : responses) {
if (response == null) {
responseCoordinate.add(null);
Expand All @@ -389,6 +396,11 @@ private List<GeoCoordinate> interpretGeoposResult(List<Object> responses) {
}
return responseCoordinate;
}

@Override
public String toString() {
return "List<GeoCoordinate>";
}
};

public static final Builder<List<GeoRadiusResponse>> GEORADIUS_WITH_PARAMS_RESULT = new Builder<List<GeoRadiusResponse>>() {
Expand Down Expand Up @@ -442,7 +454,7 @@ public List<GeoRadiusResponse> build(Object data) {

@Override
public String toString() {
return "GeoRadiusWithParamsResult";
return "List<GeoRadiusResponse>";
}
};

Expand Down Expand Up @@ -475,23 +487,6 @@ public String toString() {
}
};

public static final Builder<List<Long>> LONG_LIST = new Builder<List<Long>>() {
@Override
@SuppressWarnings("unchecked")
public List<Long> build(Object data) {
if (null == data) {
return null;
}
return (List<Long>) data;
}

@Override
public String toString() {
return "List<Long>";
}

};

public static final Builder<StreamEntryID> STREAM_ENTRY_ID = new Builder<StreamEntryID>() {
@Override
@SuppressWarnings("unchecked")
Expand Down Expand Up @@ -584,8 +579,6 @@ public String toString() {
}
};



private BuilderFactory() {
throw new InstantiationError( "Must not instantiate this class" );
}
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/redis/clients/jedis/PipelineBase.java
Expand Up @@ -1337,13 +1337,13 @@ public Response<Tuple> zpopmin(final byte[] key) {
}

@Override
public Response<Set<Tuple>> zpopmin(final byte[] key, final int count) {
public Response<Set<Tuple>> zpopmin(final String key, final int count) {
sazzad16 marked this conversation as resolved.
Show resolved Hide resolved
getClient(key).zpopmin(key, count);
return getResponse(BuilderFactory.TUPLE_ZSET);
}

@Override
public Response<Set<Tuple>> zpopmin(final String key, final int count) {
public Response<Set<Tuple>> zpopmin(final byte[] key, final int count) {
sazzad16 marked this conversation as resolved.
Show resolved Hide resolved
getClient(key).zpopmin(key, count);
return getResponse(BuilderFactory.TUPLE_ZSET);
}
Expand Down
Expand Up @@ -673,6 +673,7 @@ public void zpopmin() {
assertEquals(expected, range);

Tuple tuple = jedis.zpopmin("foo");

assertEquals(new Tuple("b", 10d), tuple);

// Binary
Expand All @@ -682,15 +683,16 @@ public void zpopmin() {
jedis.zadd(bfoo, 0.1d, bc);
jedis.zadd(bfoo, 2d, ba);

Set<Tuple> brange = jedis.zpopmin(bfoo, 2);
range = jedis.zpopmin(bfoo, 2);

Set<Tuple> bexpected = new LinkedHashSet<Tuple>();
bexpected.add(new Tuple(bc, 0.1d));
bexpected.add(new Tuple(ba, 2d));
expected = new LinkedHashSet<Tuple>();
expected.add(new Tuple(bc, 0.1d));
expected.add(new Tuple(ba, 2d));

assertEquals(bexpected, brange);
assertEquals(expected, range);

tuple = jedis.zpopmin(bfoo);

assertEquals(new Tuple(bb, 10d), tuple);
}

Expand Down