public Map<String, String> hgetAll(String key) { return call(jedis -> jedis.hgetAll(key), Collections.<String, String>emptyMap()); }
@Override public Status read(String table, String key, Set<String> fields, Map<String, ByteIterator> result) { if (fields == null) { StringByteIterator.putAllAsByteIterators(result, jedis.hgetAll(key)); } else { String[] fieldArray = (String[]) fields.toArray(new String[fields.size()]); List<String> values = jedis.hmget(key, fieldArray); Iterator<String> fieldIterator = fields.iterator(); Iterator<String> valueIterator = values.iterator(); while (fieldIterator.hasNext() && valueIterator.hasNext()) { result.put(fieldIterator.next(), new StringByteIterator(valueIterator.next())); } assert !fieldIterator.hasNext() && !valueIterator.hasNext(); } return result.isEmpty() ? Status.ERROR : Status.OK; }
public Map<String, String> hgetAll(String key) { return call(jedis -> jedis.hgetAll(key), Collections.<String, String>emptyMap()); }
/** {@inheritDoc} **/ @Override public <T> Map<String, T> haget(String key, String subkey, Class<T> clazz) { JedisCommands jedis = this.getInstanceByKey(key); Map<String, String> map = jedis.hgetAll(concat(key, subkey)); Map<String, T> values = new HashMap<>(); if (map != null && !map.isEmpty()) { for (Map.Entry<String, String> entry : map.entrySet()) { values.put(entry.getKey(), deserializeValue(entry.getValue(), clazz)); } } return values; }
/** {@inheritDoc} **/ @Override public <T> Map<String, T> haget(String key, String subkey, Class<T> clazz) { JedisCommands jedis = this.getInstanceByKey(key); Map<String, String> map = jedis.hgetAll(concat(key, subkey)); Map<String, T> values = new HashMap<>(); if (map != null && !map.isEmpty()) { for (Map.Entry<String, String> entry : map.entrySet()) { values.put(entry.getKey(), deserializeValue(entry.getValue(), clazz)); } } return values; }
/** {@inheritDoc} **/ @Override public Map<String, String> haget(String key, String subkey) { JedisCommands jedis = this.getInstanceByKey(key); return jedis.hgetAll(concat(key, subkey)); }
/** {@inheritDoc} **/ @Override public Map<String, String> haget(String key, String subkey) { JedisCommands jedis = this.getInstanceByKey(key); return jedis.hgetAll(concat(key, subkey)); }
@Override public Task get(String id) { Map<String, String> taskMap = retry(() -> redisClientDelegate.withCommandsClient(client -> { return client.hgetAll("task:" + id); }), format("Getting task ID %s", id)); boolean oldTask = redisClientDelegatePrevious.isPresent() && (taskMap == null || taskMap.isEmpty()); if (oldTask) { try { taskMap = redisClientDelegatePrevious.get().withCommandsClient(client -> { return client.hgetAll("task:" + id); }); } catch (Exception e) { // Failed to hit old redis, let's not blow up on that return null; } } if (taskMap.containsKey("id") && taskMap.containsKey("startTimeMs")) { return new JedisTask( taskMap.get("id"), Long.parseLong(taskMap.get("startTimeMs")), this, taskMap.get("ownerId"), oldTask ); } return null; }
/** {@inheritDoc} **/ @Override public <T> T hoget(String key, String subkey, Class<T> clazz) { JedisCommands jedis = this.getInstanceByKey(key); Map<String, String> map = jedis.hgetAll(concat(key, subkey)); if (map == null || map.isEmpty()) { return null; } else { return deserializeFeilds(map, clazz); } }
/** {@inheritDoc} **/ @Override public <T> T hoget(String key, String subkey, Class<T> clazz) { JedisCommands jedis = this.getInstanceByKey(key); Map<String, String> map = jedis.hgetAll(concat(key, subkey)); if (map == null || map.isEmpty()) { return null; } else { return deserializeFeilds(map, clazz); } }
/** {@inheritDoc} **/ @Override public Map<String, String> hmget(String key, String subkey, List<String> fields) { JedisCommands jedis = this.getInstanceByKey(key); if (fields == null) { return jedis.hgetAll(concat(key, subkey)); } else if (fields.size() == 0) { return new HashMap<>(); } else if (fields.size() == 1) { Map<String, String> map = new HashMap<>(); map.put(fields.get(0), jedis.hget(concat(key, subkey), fields.get(0))); return map; } else { List<String> values = jedis.hmget(concat(key, subkey), toArray(fields)); Map<String, String> map = new HashMap<>(); for (int i = 0; i < fields.size() && i < values.size(); i++) { map.put(fields.get(i), values.get(i)); } return map; } }
/** {@inheritDoc} **/ @Override public Map<String, String> hmget(String key, String subkey, List<String> fields) { JedisCommands jedis = this.getInstanceByKey(key); if (fields == null) { return jedis.hgetAll(concat(key, subkey)); } else if (fields.size() == 0) { return new HashMap<>(); } else if (fields.size() == 1) { Map<String, String> map = new HashMap<>(); map.put(fields.get(0), jedis.hget(concat(key, subkey), fields.get(0))); return map; } else { List<String> values = jedis.hmget(concat(key, subkey), toArray(fields)); Map<String, String> map = new HashMap<>(); for (int i = 0; i < fields.size() && i < values.size(); i++) { map.put(fields.get(i), values.get(i)); } return map; } }
/** * 获取所有值 * * @return */ public Map<String, String> getAll() { try { return getJedisCommands(groupName).hgetAll(key); } finally { getJedisProvider(groupName).release(); } }
/** {@inheritDoc} **/ @Override public <T> Map<String, T> hmget(String key, String subkey, List<String> fields, Class<T> clazz) { JedisCommands jedis = this.getInstanceByKey(key); Map<String, T> map = new HashMap<>(); if (fields == null) { Map<String, String> values = jedis.hgetAll(concat(key, subkey)); for (Map.Entry<String, String> entry : values.entrySet()) { map.put(entry.getKey(), deserializeValue(entry.getValue(), clazz)); } } else if (fields.size() == 0) { // do nothing } else if (fields.size() == 1) { String string = jedis.hget(concat(key, subkey), fields.get(0)); map.put(fields.get(0), deserializeValue(string, clazz)); } else { List<String> values = jedis.hmget(concat(key, subkey), toArray(fields)); for (int i = 0; i < fields.size() && i < values.size(); i++) { map.put(fields.get(i), deserializeValue(values.get(i), clazz)); } } return map; }
/** {@inheritDoc} **/ @Override public <T> Map<String, T> hmget(String key, String subkey, List<String> fields, Class<T> clazz) { JedisCommands jedis = this.getInstanceByKey(key); Map<String, T> map = new HashMap<>(); if (fields == null) { Map<String, String> values = jedis.hgetAll(concat(key, subkey)); for (Map.Entry<String, String> entry : values.entrySet()) { map.put(entry.getKey(), deserializeValue(entry.getValue(), clazz)); } } else if (fields.size() == 0) { // do nothing } else if (fields.size() == 1) { String string = jedis.hget(concat(key, subkey), fields.get(0)); map.put(fields.get(0), deserializeValue(string, clazz)); } else { List<String> values = jedis.hmget(concat(key, subkey), toArray(fields)); for (int i = 0; i < fields.size() && i < values.size(); i++) { map.put(fields.get(i), deserializeValue(values.get(i), clazz)); } } return map; }
return client.hgetAll(userKey(permission.getId(), ResourceType.ROLE)).values().stream() .map((ThrowingFunction<String, Role>) serialized -> objectMapper.readValue(serialized, Role.class))
return client.hgetAll(userKey(permission.getId(), ResourceType.ROLE)).values().stream() .map((ThrowingFunction<String, Role>) serialized -> objectMapper.readValue(serialized, Role.class))
@Override public void remove(@NonNull String id) { try { redisClientDelegate.withCommandsClient(jedis -> { Map<String, String> userRolesById = jedis.hgetAll(userKey(id, ResourceType.ROLE)); redisClientDelegate.withMultiKeyPipeline(p -> { p.srem(allUsersKey(), id); for (String roleName : userRolesById.keySet()) { p.srem(roleKey(roleName), id); } for (ResourceType r : ResourceType.values()) { p.del(userKey(id, r)); } p.srem(adminKey(), id); p.sync(); }); }); } catch (Exception e) { log.error("Storage exception reading " + id + " entry.", e); } }
@Override public void remove(@NonNull String id) { try { redisClientDelegate.withCommandsClient(jedis -> { Map<String, String> userRolesById = jedis.hgetAll(userKey(id, ResourceType.ROLE)); redisClientDelegate.withMultiKeyPipeline(p -> { p.srem(allUsersKey(), id); for (String roleName : userRolesById.keySet()) { p.srem(roleKey(roleName), id); } for (ResourceType r : ResourceType.values()) { p.del(userKey(id, r)); } p.srem(adminKey(), id); p.sync(); }); }); } catch (Exception e) { log.error("Storage exception reading " + id + " entry.", e); } }