org.springframework.data.redis.connection.RedisConnection.sRem()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(8.6k)|赞(0)|评价(0)|浏览(217)

本文整理了Java中org.springframework.data.redis.connection.RedisConnection.sRem方法的一些代码示例,展示了RedisConnection.sRem的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RedisConnection.sRem方法的具体详情如下:
包路径:org.springframework.data.redis.connection.RedisConnection
类名称:RedisConnection
方法名:sRem

RedisConnection.sRem介绍

暂无

代码示例

代码示例来源:origin: spring-projects/spring-data-redis

@Override
public Long sRem(byte[] key, byte[]... values) {
  return convertAndReturn(delegate.sRem(key, values), identityConverter);
}

代码示例来源:origin: spring-projects/spring-data-redis

@Override
public Long remove(K key, Object... values) {
  byte[] rawKey = rawKey(key);
  byte[][] rawValues = rawValues(values);
  return execute(connection -> connection.sRem(rawKey, rawValues), true);
}

代码示例来源:origin: spring-projects/spring-data-redis

/**
 * Remove given key from all indexes matching {@link IndexedData#getIndexName()}:
 *
 * @param key
 * @param indexedData
 */
protected void removeKeyFromExistingIndexes(byte[] key, IndexedData indexedData) {
  Assert.notNull(indexedData, "IndexedData must not be null!");
  Set<byte[]> existingKeys = connection
      .keys(toBytes(indexedData.getKeyspace() + ":" + indexedData.getIndexName() + ":*"));
  if (!CollectionUtils.isEmpty(existingKeys)) {
    for (byte[] existingKey : existingKeys) {
      if (indexedData instanceof GeoIndexedPropertyValue) {
        connection.geoRemove(existingKey, key);
      } else {
        connection.sRem(existingKey, key);
      }
    }
  }
}

代码示例来源:origin: spring-projects/spring-data-redis

/**
 * Removes a key from all available indexes.
 *
 * @param key must not be {@literal null}.
 */
public void removeKeyFromIndexes(String keyspace, Object key) {
  Assert.notNull(key, "Key must not be null!");
  byte[] binKey = toBytes(key);
  byte[] indexHelperKey = ByteUtils.concatAll(toBytes(keyspace + ":"), binKey, toBytes(":idx"));
  for (byte[] indexKey : connection.sMembers(indexHelperKey)) {
    DataType type = connection.type(indexKey);
    if (DataType.ZSET.equals(type)) {
      connection.zRem(indexKey, binKey);
    } else {
      connection.sRem(indexKey, binKey);
    }
  }
  connection.del(indexHelperKey);
}

代码示例来源:origin: spring-projects/spring-security-oauth

conn.openPipeline();
conn.del(authToAccessKey);
conn.sRem(unameKey, access);
conn.sRem(clientId, access);
conn.del(serialize(ACCESS + key));
conn.closePipeline();

代码示例来源:origin: spring-projects/spring-data-redis

@Override
public <T> T delete(Object id, String keyspace, Class<T> type) {
  byte[] binId = toBytes(id);
  byte[] binKeyspace = toBytes(keyspace);
  T o = get(id, keyspace, type);
  if (o != null) {
    byte[] keyToDelete = createKey(asString(keyspace), asString(id));
    redisOps.execute((RedisCallback<Void>) connection -> {
      connection.del(keyToDelete);
      connection.sRem(binKeyspace, binId);
      new IndexWriter(connection, converter).removeKeyFromIndexes(asString(keyspace), binId);
      return null;
    });
  }
  return o;
}

代码示例来源:origin: spring-projects/spring-data-redis

@Override
public void onMessage(Message message, @Nullable byte[] pattern) {
  if (!isKeyExpirationMessage(message)) {
    return;
  }
  byte[] key = message.getBody();
  byte[] phantomKey = ByteUtils.concat(key, converter.getConversionService().convert(KeyspaceIdentifier.PHANTOM_SUFFIX, byte[].class));
  Map<byte[], byte[]> hash = ops.execute((RedisCallback<Map<byte[], byte[]>>) connection -> {
    Map<byte[], byte[]> hash1 = connection.hGetAll(phantomKey);
    if (!CollectionUtils.isEmpty(hash1)) {
      connection.del(phantomKey);
    }
    return hash1;
  });
  Object value = converter.read(Object.class, new RedisData(hash));
  String channel = !ObjectUtils.isEmpty(message.getChannel())
      ? converter.getConversionService().convert(message.getChannel(), String.class) : null;
  RedisKeyExpiredEvent event = new RedisKeyExpiredEvent(channel, key, value);
  ops.execute((RedisCallback<Void>) connection -> {
    connection.sRem(converter.getConversionService().convert(event.getKeyspace(), byte[].class), event.getId());
    new IndexWriter(connection, converter).removeKeyFromIndexes(event.getKeyspace(), event.getId());
    return null;
  });
  publishEvent(event);
}

代码示例来源:origin: spring-projects/spring-data-redis

connection.zRem(index.key, toBytes(redisUpdateObject.targetId));
} else {
  connection.sRem(index.key, toBytes(redisUpdateObject.targetId));

代码示例来源:origin: 1991wangliang/tx-lcn

@Override
public Long sRem(byte[] key, byte[]... values) {
  return redisConnection.sRem(key, values);
}

代码示例来源:origin: org.springframework.data/spring-data-redis

@Override
public Long sRem(byte[] key, byte[]... values) {
  return convertAndReturn(delegate.sRem(key, values), identityConverter);
}

代码示例来源:origin: apache/servicemix-bundles

@Override
public Long sRem(byte[] key, byte[]... values) {
  return convertAndReturn(delegate.sRem(key, values), identityConverter);
}

代码示例来源:origin: org.hsweb/hsweb-web-concurrent-cache

@Override
public void evict(Object key) {
  super.evict(key);
  redisOperations.execute((RedisCallback) connection -> {
    connection.sRem(keySetKey, ((String) key).getBytes());
    return null;
  });
}

代码示例来源:origin: org.springframework.data/spring-data-redis

@Override
public Long remove(K key, Object... values) {
  byte[] rawKey = rawKey(key);
  byte[][] rawValues = rawValues(values);
  return execute(connection -> connection.sRem(rawKey, rawValues), true);
}

代码示例来源:origin: apache/servicemix-bundles

@Override
public Long remove(K key, Object... values) {
  byte[] rawKey = rawKey(key);
  byte[][] rawValues = rawValues(values);
  return execute(connection -> connection.sRem(rawKey, rawValues), true);
}

代码示例来源:origin: org.springframework.data/spring-data-redis

/**
 * Remove given key from all indexes matching {@link IndexedData#getIndexName()}:
 *
 * @param key
 * @param indexedData
 */
protected void removeKeyFromExistingIndexes(byte[] key, IndexedData indexedData) {
  Assert.notNull(indexedData, "IndexedData must not be null!");
  Set<byte[]> existingKeys = connection
      .keys(toBytes(indexedData.getKeyspace() + ":" + indexedData.getIndexName() + ":*"));
  if (!CollectionUtils.isEmpty(existingKeys)) {
    for (byte[] existingKey : existingKeys) {
      if (indexedData instanceof GeoIndexedPropertyValue) {
        connection.geoRemove(existingKey, key);
      } else {
        connection.sRem(existingKey, key);
      }
    }
  }
}

代码示例来源:origin: apache/servicemix-bundles

/**
 * Remove given key from all indexes matching {@link IndexedData#getIndexName()}:
 *
 * @param key
 * @param indexedData
 */
protected void removeKeyFromExistingIndexes(byte[] key, IndexedData indexedData) {
  Assert.notNull(indexedData, "IndexedData must not be null!");
  Set<byte[]> existingKeys = connection
      .keys(toBytes(indexedData.getKeyspace() + ":" + indexedData.getIndexName() + ":*"));
  if (!CollectionUtils.isEmpty(existingKeys)) {
    for (byte[] existingKey : existingKeys) {
      if (indexedData instanceof GeoIndexedPropertyValue) {
        connection.geoRemove(existingKey, key);
      } else {
        connection.sRem(existingKey, key);
      }
    }
  }
}

代码示例来源:origin: org.springframework.data/spring-data-redis

/**
 * Removes a key from all available indexes.
 *
 * @param key must not be {@literal null}.
 */
public void removeKeyFromIndexes(String keyspace, Object key) {
  Assert.notNull(key, "Key must not be null!");
  byte[] binKey = toBytes(key);
  byte[] indexHelperKey = ByteUtils.concatAll(toBytes(keyspace + ":"), binKey, toBytes(":idx"));
  for (byte[] indexKey : connection.sMembers(indexHelperKey)) {
    DataType type = connection.type(indexKey);
    if (DataType.ZSET.equals(type)) {
      connection.zRem(indexKey, binKey);
    } else {
      connection.sRem(indexKey, binKey);
    }
  }
  connection.del(indexHelperKey);
}

代码示例来源:origin: apache/servicemix-bundles

/**
 * Removes a key from all available indexes.
 *
 * @param key must not be {@literal null}.
 */
public void removeKeyFromIndexes(String keyspace, Object key) {
  Assert.notNull(key, "Key must not be null!");
  byte[] binKey = toBytes(key);
  byte[] indexHelperKey = ByteUtils.concatAll(toBytes(keyspace + ":"), binKey, toBytes(":idx"));
  for (byte[] indexKey : connection.sMembers(indexHelperKey)) {
    DataType type = connection.type(indexKey);
    if (DataType.ZSET.equals(type)) {
      connection.zRem(indexKey, binKey);
    } else {
      connection.sRem(indexKey, binKey);
    }
  }
  connection.del(indexHelperKey);
}

代码示例来源:origin: org.springframework.data/spring-data-redis

@Override
public <T> T delete(Object id, String keyspace, Class<T> type) {
  byte[] binId = toBytes(id);
  byte[] binKeyspace = toBytes(keyspace);
  T o = get(id, keyspace, type);
  if (o != null) {
    byte[] keyToDelete = createKey(asString(keyspace), asString(id));
    redisOps.execute((RedisCallback<Void>) connection -> {
      connection.del(keyToDelete);
      connection.sRem(binKeyspace, binId);
      new IndexWriter(connection, converter).removeKeyFromIndexes(asString(keyspace), binId);
      return null;
    });
  }
  return o;
}

代码示例来源:origin: apache/servicemix-bundles

@Override
public <T> T delete(Object id, String keyspace, Class<T> type) {
  byte[] binId = toBytes(id);
  byte[] binKeyspace = toBytes(keyspace);
  T o = get(id, keyspace, type);
  if (o != null) {
    byte[] keyToDelete = createKey(asString(keyspace), asString(id));
    redisOps.execute((RedisCallback<Void>) connection -> {
      connection.del(keyToDelete);
      connection.sRem(binKeyspace, binId);
      new IndexWriter(connection, converter).removeKeyFromIndexes(asString(keyspace), binId);
      return null;
    });
  }
  return o;
}

相关文章

微信公众号

最新文章

更多

RedisConnection类方法