From bb5fe63b721a353ba01ccff7b6223c24b9b4217b Mon Sep 17 00:00:00 2001 From: Jonathan Leibiusky Date: Sun, 8 Aug 2010 13:20:43 -0300 Subject: [PATCH] Implemented LASTSAVE --- src/main/java/redis/clients/jedis/Client.java | 4 ++++ src/main/java/redis/clients/jedis/Jedis.java | 5 +++++ .../PersistenceControlCommandsTest.java | 17 +++++++++++++++++ 3 files changed, 26 insertions(+) diff --git a/src/main/java/redis/clients/jedis/Client.java b/src/main/java/redis/clients/jedis/Client.java index 3ccab85..3fbfc9a 100644 --- a/src/main/java/redis/clients/jedis/Client.java +++ b/src/main/java/redis/clients/jedis/Client.java @@ -523,4 +523,8 @@ public class Client extends Connection { public void bgrewriteaof() { sendCommand("BGREWRITEAOF"); } + + public void lastsave() { + sendCommand("LASTSAVE"); + } } \ No newline at end of file diff --git a/src/main/java/redis/clients/jedis/Jedis.java b/src/main/java/redis/clients/jedis/Jedis.java index 17d694a..e3c06d5 100644 --- a/src/main/java/redis/clients/jedis/Jedis.java +++ b/src/main/java/redis/clients/jedis/Jedis.java @@ -617,4 +617,9 @@ public class Jedis { client.bgrewriteaof(); return client.getStatusCodeReply(); } + + public int lastsave() { + client.lastsave(); + return client.getIntegerReply(); + } } \ No newline at end of file diff --git a/src/test/java/redis/clients/jedis/tests/commands/PersistenceControlCommandsTest.java b/src/test/java/redis/clients/jedis/tests/commands/PersistenceControlCommandsTest.java index 29b7d05..44bd04f 100644 --- a/src/test/java/redis/clients/jedis/tests/commands/PersistenceControlCommandsTest.java +++ b/src/test/java/redis/clients/jedis/tests/commands/PersistenceControlCommandsTest.java @@ -2,6 +2,8 @@ package redis.clients.jedis.tests.commands; import org.junit.Test; +import redis.clients.jedis.JedisException; + public class PersistenceControlCommandsTest extends JedisCommandTestBase { @Test public void save() { @@ -21,4 +23,19 @@ public class PersistenceControlCommandsTest extends JedisCommandTestBase { assertEquals("Background append only file rewriting started", status); } + @Test + public void lastsave() throws InterruptedException { + int before = jedis.lastsave(); + String st = ""; + while (!st.equals("OK")) { + try { + Thread.sleep(1000); + st = jedis.save(); + } catch (JedisException e) { + + } + } + int after = jedis.lastsave(); + assertTrue((after - before) > 0); + } } \ No newline at end of file