forked from vert-x3/vertx-examples
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathRedisClientVerticle.java
More file actions
42 lines (36 loc) · 1.15 KB
/
RedisClientVerticle.java
File metadata and controls
42 lines (36 loc) · 1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package io.vertx.examples.redis;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.Vertx;
import io.vertx.redis.client.Redis;
import io.vertx.redis.client.RedisAPI;
import io.vertx.redis.client.RedisOptions;
import java.util.Arrays;
/**
* A verticle setting and reading a value in Redis.
*/
public class RedisClientVerticle extends AbstractVerticle {
@Override
public void start() {
// If a config file is set, read the host and port.
String host = Vertx.currentContext().config().getString("host");
if (host == null) {
host = "127.0.0.1";
}
// Create the redis client
Redis client = Redis.createClient(vertx, new RedisOptions().addConnectionString(host));
RedisAPI redis = RedisAPI.api(client);
client.connect()
.compose(conn ->
redis.set(Arrays.asList("key", "value"))
.compose(v -> {
System.out.println("key stored");
return redis.get("key");
}))
.onSuccess(result -> {
System.out.println("Retrieved value: " + result);
})
.onFailure(err -> {
System.out.println("Connection or Operation Failed " + err);
});
}
}