Skip to content

Commit bc89e2c

Browse files
committed
initial PR feedback; naming consistencies
1 parent 586ff84 commit bc89e2c

File tree

9 files changed

+115
-38
lines changed

9 files changed

+115
-38
lines changed

src/main/asciidoc/index.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ You can also provide your own implementation of the cache:
203203

204204
[source,$lang]
205205
----
206-
{@link examples.RedisExamples#clientCaching1}
206+
{@link examples.RedisExamples#clientCaching2}
207207
----
208208

209209
NOTE: The current implementation has a few caveats. The cache is not a write-through cache. A value will
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
package io.vertx.redis.client;
2+
3+
import io.vertx.core.json.JsonObject;
4+
import io.vertx.core.json.JsonArray;
5+
import io.vertx.core.json.impl.JsonUtil;
6+
import java.time.Instant;
7+
import java.time.format.DateTimeFormatter;
8+
import java.util.Base64;
9+
10+
/**
11+
* Converter and mapper for {@link io.vertx.redis.client.CachingRedisOptions}.
12+
* NOTE: This class has been automatically generated from the {@link io.vertx.redis.client.CachingRedisOptions} original class using Vert.x codegen.
13+
*/
14+
public class CachingRedisOptionsConverter {
15+
16+
17+
private static final Base64.Decoder BASE64_DECODER = JsonUtil.BASE64_DECODER;
18+
private static final Base64.Encoder BASE64_ENCODER = JsonUtil.BASE64_ENCODER;
19+
20+
public static void fromJson(Iterable<java.util.Map.Entry<String, Object>> json, CachingRedisOptions obj) {
21+
for (java.util.Map.Entry<String, Object> member : json) {
22+
switch (member.getKey()) {
23+
case "maxAge":
24+
if (member.getValue() instanceof Number) {
25+
obj.setMaxAge(((Number)member.getValue()).longValue());
26+
}
27+
break;
28+
case "maxAgeUnit":
29+
if (member.getValue() instanceof String) {
30+
obj.setMaxAgeUnit(java.util.concurrent.TimeUnit.valueOf((String)member.getValue()));
31+
}
32+
break;
33+
case "maxCacheSize":
34+
if (member.getValue() instanceof Number) {
35+
obj.setMaxCacheSize(((Number)member.getValue()).intValue());
36+
}
37+
break;
38+
case "mode":
39+
if (member.getValue() instanceof String) {
40+
obj.setMode(io.vertx.redis.client.ClientSideCacheMode.valueOf((String)member.getValue()));
41+
}
42+
break;
43+
case "prefix":
44+
if (member.getValue() instanceof String) {
45+
obj.setPrefix((String)member.getValue());
46+
}
47+
break;
48+
case "prefixes":
49+
if (member.getValue() instanceof JsonArray) {
50+
java.util.ArrayList<java.lang.String> list = new java.util.ArrayList<>();
51+
((Iterable<Object>)member.getValue()).forEach( item -> {
52+
if (item instanceof String)
53+
list.add((String)item);
54+
});
55+
obj.setPrefixes(list);
56+
}
57+
break;
58+
case "prefixs":
59+
if (member.getValue() instanceof JsonArray) {
60+
((Iterable<Object>)member.getValue()).forEach( item -> {
61+
if (item instanceof String)
62+
obj.addPrefix((String)item);
63+
});
64+
}
65+
break;
66+
}
67+
}
68+
}
69+
70+
public static void toJson(CachingRedisOptions obj, JsonObject json) {
71+
toJson(obj, json.getMap());
72+
}
73+
74+
public static void toJson(CachingRedisOptions obj, java.util.Map<String, Object> json) {
75+
json.put("maxAge", obj.getMaxAge());
76+
if (obj.getMaxAgeUnit() != null) {
77+
json.put("maxAgeUnit", obj.getMaxAgeUnit().name());
78+
}
79+
json.put("maxCacheSize", obj.getMaxCacheSize());
80+
if (obj.getMode() != null) {
81+
json.put("mode", obj.getMode().name());
82+
}
83+
if (obj.getPrefixes() != null) {
84+
JsonArray array = new JsonArray();
85+
obj.getPrefixes().forEach(item -> array.add(item));
86+
json.put("prefixes", array);
87+
}
88+
}
89+
}

src/main/java/examples/RedisExamples.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ public void tracing1(RedisOptions options) {
248248
}
249249

250250
public void clientCaching1(Vertx vertx) {
251-
CachingRedisClient
251+
CachingRedis
252252
.create(vertx)
253253
.connect()
254254
.onSuccess(conn -> {
@@ -260,7 +260,7 @@ public void clientCaching1(Vertx vertx) {
260260
}
261261

262262
public void clientCaching2(Vertx vertx, ClientSideCache customCache) {
263-
CachingRedisClient
263+
CachingRedis
264264
.create(vertx, customCache)
265265
.connect()
266266
.onSuccess(conn -> {

src/main/java/io/vertx/redis/client/CachingRedisClient.java renamed to src/main/java/io/vertx/redis/client/CachingRedis.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
import io.vertx.core.Future;
1919
import io.vertx.core.Handler;
2020
import io.vertx.core.Vertx;
21-
import io.vertx.redis.client.impl.CachingRedisClientImpl;
21+
import io.vertx.redis.client.impl.CachingRedisClient;
2222
import io.vertx.redis.client.impl.cache.CacheKey;
2323

2424
import java.util.Collection;
@@ -28,15 +28,15 @@
2828
*
2929
* @see <a href="https://redis.io/docs/manual/client-side-caching/">Client-side caching in Redis</a>
3030
*/
31-
public interface CachingRedisClient extends Redis {
31+
public interface CachingRedis extends Redis {
3232

3333
/**
3434
* Create a new caching client using default client and cache options.
3535
*
3636
* @param vertx the vertx instance
3737
* @return the caching client
3838
*/
39-
static CachingRedisClient create(Vertx vertx) {
39+
static CachingRedis create(Vertx vertx) {
4040
return create(vertx, Redis.createClient(vertx));
4141
}
4242

@@ -47,7 +47,7 @@ static CachingRedisClient create(Vertx vertx) {
4747
* @param redis the redis client to wrap
4848
* @return the caching client
4949
*/
50-
static CachingRedisClient create(Vertx vertx, Redis redis) {
50+
static CachingRedis create(Vertx vertx, Redis redis) {
5151
return create(vertx, redis, ClientSideCache.lfu(new CachingRedisOptions()));
5252
}
5353

@@ -58,7 +58,7 @@ static CachingRedisClient create(Vertx vertx, Redis redis) {
5858
* @param cache the backing cache
5959
* @return the caching client
6060
*/
61-
static CachingRedisClient create(Vertx vertx, ClientSideCache cache) {
61+
static CachingRedis create(Vertx vertx, ClientSideCache cache) {
6262
return create(vertx, Redis.createClient(vertx), cache);
6363
}
6464

@@ -70,7 +70,7 @@ static CachingRedisClient create(Vertx vertx, ClientSideCache cache) {
7070
* @param cache the backing cache
7171
* @return the caching client
7272
*/
73-
static CachingRedisClient create(Vertx vertx, Redis redis, ClientSideCache cache) {
73+
static CachingRedis create(Vertx vertx, Redis redis, ClientSideCache cache) {
7474
return create(vertx, redis, cache, new CachingRedisOptions());
7575
}
7676

@@ -82,7 +82,7 @@ static CachingRedisClient create(Vertx vertx, Redis redis, ClientSideCache cache
8282
* @param options the cache options
8383
* @return the caching client
8484
*/
85-
static CachingRedisClient create(Vertx vertx, Redis redis, CachingRedisOptions options) {
85+
static CachingRedis create(Vertx vertx, Redis redis, CachingRedisOptions options) {
8686
return create(vertx, redis, ClientSideCache.lfu(options), options);
8787
}
8888

@@ -95,8 +95,8 @@ static CachingRedisClient create(Vertx vertx, Redis redis, CachingRedisOptions o
9595
* @param options the cache options
9696
* @return the caching client
9797
*/
98-
static CachingRedisClient create(Vertx vertx, Redis redis, ClientSideCache cache, CachingRedisOptions options) {
99-
return new CachingRedisClientImpl(vertx, redis, cache, options);
98+
static CachingRedis create(Vertx vertx, Redis redis, ClientSideCache cache, CachingRedisOptions options) {
99+
return new CachingRedisClient(vertx, redis, cache, options);
100100
}
101101

102102
/**
@@ -119,5 +119,5 @@ static CachingRedisClient create(Vertx vertx, Redis redis, ClientSideCache cache
119119
* @param handler a handler that accepts the keys which were invalidated
120120
* @return fluent self
121121
*/
122-
CachingRedisClient invalidationHandler(Handler<Collection<CacheKey>> handler);
122+
CachingRedis invalidationHandler(Handler<Collection<CacheKey>> handler);
123123
}

src/main/java/io/vertx/redis/client/CachingRedisOptions.java

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import io.vertx.core.json.JsonObject;
2020

2121
import java.util.ArrayList;
22-
import java.util.Collection;
2322
import java.util.List;
2423
import java.util.concurrent.TimeUnit;
2524

@@ -74,7 +73,7 @@ public CachingRedisOptions(CachingRedisOptions other) {
7473
*/
7574
public CachingRedisOptions(JsonObject json) {
7675
this();
77-
//CachingRedisOptionsConverter.fromJson(json, this);
76+
CachingRedisOptionsConverter.fromJson(json, this);
7877
}
7978

8079
/**
@@ -193,17 +192,6 @@ public CachingRedisOptions setPrefix(String prefix) {
193192
return this;
194193
}
195194

196-
/**
197-
* Add prefixes the server should send invalidation messages for.
198-
*
199-
* @param prefixes the prefixes to add
200-
* @return fluent self
201-
*/
202-
public CachingRedisOptions addPrefixes(Collection<String> prefixes) {
203-
this.prefixes.addAll(prefixes);
204-
return this;
205-
}
206-
207195
/**
208196
* Add a prefix teh server should send invalidation messages for.
209197
*

src/main/java/io/vertx/redis/client/ClientSideCache.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import io.vertx.redis.client.impl.cache.LRUClientSideCache;
2222

2323
/**
24-
* A client-side cache store used by a {@link CachingRedisClient}.
24+
* A client-side cache store used by a {@link CachingRedis}.
2525
*/
2626
public interface ClientSideCache {
2727

src/main/java/io/vertx/redis/client/impl/CachingRedisClientImpl.java renamed to src/main/java/io/vertx/redis/client/impl/CachingRedisClient.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
import io.vertx.core.impl.VertxInternal;
2424
import io.vertx.core.impl.logging.Logger;
2525
import io.vertx.core.impl.logging.LoggerFactory;
26-
import io.vertx.redis.client.CachingRedisClient;
26+
import io.vertx.redis.client.CachingRedis;
2727
import io.vertx.redis.client.CachingRedisOptions;
2828
import io.vertx.redis.client.ClientSideCache;
2929
import io.vertx.redis.client.ClientSideCacheMode;
@@ -45,9 +45,9 @@
4545
import java.util.concurrent.ConcurrentHashMap;
4646
import java.util.concurrent.atomic.AtomicBoolean;
4747

48-
public class CachingRedisClientImpl implements CachingRedisClient {
48+
public class CachingRedisClient implements CachingRedis {
4949

50-
private static final Logger LOG = LoggerFactory.getLogger(CachingRedisClient.class);
50+
private static final Logger LOG = LoggerFactory.getLogger(CachingRedis.class);
5151
private static final String INVALIDATIONS_CHANNEL = "__redis__:invalidate";
5252
private static final Request CLIENT_ID_COMMAND = Request.cmd(Command.CLIENT).arg("ID");
5353
private static final Request SUBSCRIBE_COMMAND = Request.cmd(Command.SUBSCRIBE).arg(INVALIDATIONS_CHANNEL);
@@ -62,8 +62,8 @@ public class CachingRedisClientImpl implements CachingRedisClient {
6262
private Promise<Integer> clientIdPromise;
6363
private Handler<Collection<CacheKey>> invalidationHandler;
6464

65-
public CachingRedisClientImpl(Vertx vertx, Redis redis, ClientSideCache cache, CachingRedisOptions options) {
66-
if (redis instanceof CachingRedisClient) {
65+
public CachingRedisClient(Vertx vertx, Redis redis, ClientSideCache cache, CachingRedisOptions options) {
66+
if (redis instanceof CachingRedis) {
6767
throw new IllegalArgumentException("CachingRedisClient can not be self referential");
6868
}
6969

@@ -141,7 +141,7 @@ public Future<Void> flush() {
141141
}
142142

143143
@Override
144-
public CachingRedisClient invalidationHandler(Handler<Collection<CacheKey>> handler) {
144+
public CachingRedis invalidationHandler(Handler<Collection<CacheKey>> handler) {
145145
this.invalidationHandler = handler;
146146
return this;
147147
}

src/main/java/io/vertx/redis/client/impl/cache/LRUClientSideCache.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,11 @@ public LRUClientSideCache(CachingRedisOptions options) {
2727

2828
@Override
2929
protected long valueAfterGet(CacheKey key, long currentValue) {
30-
return System.nanoTime();
30+
return System.currentTimeMillis();
3131
}
3232

3333
@Override
3434
protected long initialValueOnSet(CacheKey key, Response value) {
35-
return System.nanoTime();
35+
return System.currentTimeMillis();
3636
}
3737
}

src/test/java/io/vertx/test/redis/CachingRedisClientTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import io.vertx.ext.unit.TestContext;
66
import io.vertx.ext.unit.junit.RunTestOnContext;
77
import io.vertx.ext.unit.junit.VertxUnitRunner;
8-
import io.vertx.redis.client.CachingRedisClient;
8+
import io.vertx.redis.client.CachingRedis;
99
import io.vertx.redis.client.Command;
1010
import io.vertx.redis.client.Redis;
1111
import io.vertx.redis.client.RedisAPI;
@@ -32,7 +32,7 @@ public class CachingRedisClientTest {
3232
public final RunTestOnContext rule = new RunTestOnContext();
3333

3434
private Redis client;
35-
private CachingRedisClient cachingClient;
35+
private CachingRedis cachingClient;
3636
private RedisAPI api;
3737

3838
@Before
@@ -41,7 +41,7 @@ public void before(TestContext should) {
4141

4242
Context context = rule.vertx().getOrCreateContext();
4343
client = Redis.createClient(rule.vertx(), new RedisOptions().setConnectionString("redis://" + container.getHost() + ":" + container.getFirstMappedPort()));
44-
cachingClient = CachingRedisClient.create(rule.vertx(), client);
44+
cachingClient = CachingRedis.create(rule.vertx(), client);
4545
cachingClient.connect().onComplete(onConnect -> {
4646
should.assertTrue(onConnect.succeeded());
4747
should.assertEquals(context, rule.vertx().getOrCreateContext());

0 commit comments

Comments
 (0)