コード例 #1
0
 @Test
 public void canRetrieveUnsetKey() {
   ShardedJedisPipeline p = jedis.pipelined();
   Response<String> shouldNotExist = p.get(UUID.randomUUID().toString());
   p.sync();
   assertNull(shouldNotExist.get());
 }
コード例 #2
0
  @Test(expected = JedisDataException.class)
  public void pipelineResponseWithinPipeline() {
    jedis.set("string", "foo");

    ShardedJedisPipeline p = jedis.pipelined();
    Response<String> string = p.get("string");
    string.get();
    p.sync();
  }
コード例 #3
0
  @Test
  public void pipeline() throws UnsupportedEncodingException {
    ShardedJedisPipeline p = jedis.pipelined();
    p.set("foo", "bar");
    p.get("foo");
    List<Object> results = p.syncAndReturnAll();

    assertEquals(2, results.size());
    assertEquals("OK", results.get(0));
    assertEquals("bar", results.get(1));
  }
コード例 #4
0
 @Override
 public void doCallback(ShardedJedisPipeline p) {
   for (Command cmd : redisCommands) {
     switch (cmd.getOp()) {
       case SET:
         p.set(cmd.getCacheKey(), cmd.getCacheValue());
         break;
       case MOD:
         p.set(cmd.getCacheKey(), cmd.getCacheValue());
         break;
       case DEL:
         p.del(cmd.getCacheKey());
         break;
       case ADD_MEMBERS:
         p.sadd(cmd.getCacheGroupKey(), cmd.getGroupValues());
         break;
       case DEL_MEMBERS:
         p.srem(cmd.getCacheGroupKey(), cmd.getGroupValues());
         break;
       case SETS:
         String[] keyvalues = cmd.getKeyvalues();
         for (int i = 0; i < keyvalues.length; i += 2) {
           p.set(keyvalues[i], keyvalues[i + 1]);
         }
       default:
         break;
     }
   }
 }
コード例 #5
0
  @Test
  public void pipelineResponse() {
    jedis.set("string", "foo");
    jedis.lpush("list", "foo");
    jedis.hset("hash", "foo", "bar");
    jedis.zadd("zset", 1, "foo");
    jedis.sadd("set", "foo");

    ShardedJedisPipeline p = jedis.pipelined();
    Response<String> string = p.get("string");
    Response<String> list = p.lpop("list");
    Response<String> hash = p.hget("hash", "foo");
    Response<Set<String>> zset = p.zrange("zset", 0, -1);
    Response<String> set = p.spop("set");
    Response<Boolean> blist = p.exists("list");
    Response<Double> zincrby = p.zincrby("zset", 1, "foo");
    Response<Long> zcard = p.zcard("zset");
    p.lpush("list", "bar");
    Response<List<String>> lrange = p.lrange("list", 0, -1);
    Response<Map<String, String>> hgetAll = p.hgetAll("hash");
    p.sadd("set", "foo");
    Response<Set<String>> smembers = p.smembers("set");
    Response<Set<Tuple>> zrangeWithScores = p.zrangeWithScores("zset", 0, -1);
    p.sync();

    assertEquals("foo", string.get());
    assertEquals("foo", list.get());
    assertEquals("bar", hash.get());
    assertEquals("foo", zset.get().iterator().next());
    assertEquals("foo", set.get());
    assertFalse(blist.get());
    assertEquals(new Double(2), zincrby.get());
    assertEquals(new Long(1), zcard.get());
    assertEquals(1, lrange.get().size());
    assertNotNull(hgetAll.get().get("foo"));
    assertEquals(1, smembers.get().size());
    assertEquals(1, zrangeWithScores.get().size());
  }