public ScanResult<Map.Entry<byte[], byte[]>> hscan(final byte[] key, final byte[] cursor, final ScanParams params) { checkIsInMultiOrPipeline(); client.hscan(key, cursor, params); List<Object> result = client.getObjectMultiBulkReply(); byte[] newcursor = (byte[]) result.get(0); List<Map.Entry<byte[], byte[]>> results = new ArrayList<Map.Entry<byte[], byte[]>>(); List<byte[]> rawResults = (List<byte[]>) result.get(1); Iterator<byte[]> iterator = rawResults.iterator(); while (iterator.hasNext()) { results.add(new AbstractMap.SimpleEntry<byte[], byte[]>(iterator.next(), iterator.next())); } return new ScanResult<Map.Entry<byte[], byte[]>>(newcursor, results); }
public ScanResult<Tuple> zscan(final byte[] key, final byte[] cursor, final ScanParams params) { checkIsInMultiOrPipeline(); client.zscan(key, cursor, params); List<Object> result = client.getObjectMultiBulkReply(); byte[] newcursor = (byte[]) result.get(0); List<Tuple> results = new ArrayList<Tuple>(); List<byte[]> rawResults = (List<byte[]>) result.get(1); Iterator<byte[]> iterator = rawResults.iterator(); while (iterator.hasNext()) { results.add(new Tuple(iterator.next(), Double.valueOf(SafeEncoder.encode(iterator.next())))); } return new ScanResult<Tuple>(newcursor, results); }
@Override public ScanResult<String> sscan(final String key, final String cursor, final ScanParams params) { checkIsInMultiOrPipeline(); client.sscan(key, cursor, params); List<Object> result = client.getObjectMultiBulkReply(); String newcursor = new String((byte[]) result.get(0)); List<String> results = new ArrayList<String>(); List<byte[]> rawResults = (List<byte[]>) result.get(1); for (byte[] bs : rawResults) { results.add(SafeEncoder.encode(bs)); } return new ScanResult<String>(newcursor, results); }
@Override public List<Slowlog> slowlogGet(long entries) { client.slowlogGet(entries); return Slowlog.from(client.getObjectMultiBulkReply()); }
public ScanResult<byte[]> scan(final byte[] cursor, final ScanParams params) { checkIsInMultiOrPipeline(); client.scan(cursor, params); List<Object> result = client.getObjectMultiBulkReply(); byte[] newcursor = (byte[]) result.get(0); List<byte[]> rawResults = (List<byte[]>) result.get(1); return new ScanResult<byte[]>(newcursor, rawResults); }
@Override public List<Slowlog> slowlogGet() { client.slowlogGet(); return Slowlog.from(client.getObjectMultiBulkReply()); }
@Override public List<Object> clusterSlots() { checkIsInMultiOrPipeline(); client.clusterSlots(); return client.getObjectMultiBulkReply(); }
@Override public ScanResult<String> scan(final String cursor, final ScanParams params) { checkIsInMultiOrPipeline(); client.scan(cursor, params); List<Object> result = client.getObjectMultiBulkReply(); String newcursor = new String((byte[]) result.get(0)); List<String> results = new ArrayList<String>(); List<byte[]> rawResults = (List<byte[]>) result.get(1); for (byte[] bs : rawResults) { results.add(SafeEncoder.encode(bs)); } return new ScanResult<String>(newcursor, results); }
public ScanResult<byte[]> sscan(final byte[] key, final byte[] cursor, final ScanParams params) { checkIsInMultiOrPipeline(); client.sscan(key, cursor, params); List<Object> result = client.getObjectMultiBulkReply(); byte[] newcursor = (byte[]) result.get(0); List<byte[]> rawResults = (List<byte[]>) result.get(1); return new ScanResult<byte[]>(newcursor, rawResults); }
/** * <pre> * redis 127.0.0.1:26381> sentinel get-master-addr-by-name mymaster * 1) "127.0.0.1" * 2) "6379" * </pre> * @param masterName * @return two elements list of strings : host and port. */ @Override public List<String> sentinelGetMasterAddrByName(String masterName) { client.sentinel(Protocol.SENTINEL_GET_MASTER_ADDR_BY_NAME, masterName); final List<Object> reply = client.getObjectMultiBulkReply(); return BuilderFactory.STRING_LIST.build(reply); }
@Override public List<GeoRadiusResponse> georadiusByMember(byte[] key, byte[] member, double radius, GeoUnit unit) { checkIsInMultiOrPipeline(); client.georadiusByMember(key, member, radius, unit); return BuilderFactory.GEORADIUS_WITH_PARAMS_RESULT.build(client.getObjectMultiBulkReply()); }
@Override public List<GeoCoordinate> geopos(String key, String... members) { checkIsInMultiOrPipeline(); client.geopos(key, members); return BuilderFactory.GEO_COORDINATE_LIST.build(client.getObjectMultiBulkReply()); }
@Override public List<GeoCoordinate> geopos(byte[] key, byte[]... members) { checkIsInMultiOrPipeline(); client.geopos(key, members); return BuilderFactory.GEO_COORDINATE_LIST.build(client.getObjectMultiBulkReply()); }
@Override public List<GeoRadiusResponse> georadius(String key, double longitude, double latitude, double radius, GeoUnit unit) { checkIsInMultiOrPipeline(); client.georadius(key, longitude, latitude, radius, unit); return BuilderFactory.GEORADIUS_WITH_PARAMS_RESULT.build(client.getObjectMultiBulkReply()); }
@Override public List<GeoRadiusResponse> georadiusByMember(String key, String member, double radius, GeoUnit unit) { checkIsInMultiOrPipeline(); client.georadiusByMember(key, member, radius, unit); return BuilderFactory.GEORADIUS_WITH_PARAMS_RESULT.build(client.getObjectMultiBulkReply()); }
@Override public List<GeoRadiusResponse> georadius(byte[] key, double longitude, double latitude, double radius, GeoUnit unit) { checkIsInMultiOrPipeline(); client.georadius(key, longitude, latitude, radius, unit); return BuilderFactory.GEORADIUS_WITH_PARAMS_RESULT.build(client.getObjectMultiBulkReply()); }
@Override public List<GeoRadiusResponse> georadius(String key, double longitude, double latitude, double radius, GeoUnit unit, GeoRadiusParam param) { checkIsInMultiOrPipeline(); client.georadius(key, longitude, latitude, radius, unit, param); return BuilderFactory.GEORADIUS_WITH_PARAMS_RESULT.build(client.getObjectMultiBulkReply()); }
@Override public List<GeoRadiusResponse> georadiusByMember(String key, String member, double radius, GeoUnit unit, GeoRadiusParam param) { checkIsInMultiOrPipeline(); client.georadiusByMember(key, member, radius, unit, param); return BuilderFactory.GEORADIUS_WITH_PARAMS_RESULT.build(client.getObjectMultiBulkReply()); }
@Override public List<GeoRadiusResponse> georadius(byte[] key, double longitude, double latitude, double radius, GeoUnit unit, GeoRadiusParam param) { checkIsInMultiOrPipeline(); client.georadius(key, longitude, latitude, radius, unit, param); return BuilderFactory.GEORADIUS_WITH_PARAMS_RESULT.build(client.getObjectMultiBulkReply()); }
@Override public List<GeoRadiusResponse> georadiusByMember(byte[] key, byte[] member, double radius, GeoUnit unit, GeoRadiusParam param) { checkIsInMultiOrPipeline(); client.georadiusByMember(key, member, radius, unit, param); return BuilderFactory.GEORADIUS_WITH_PARAMS_RESULT.build(client.getObjectMultiBulkReply()); }