Как я могу сделать свой собственный класс данных как тип значения StatefulRedisConnection? - PullRequest
1 голос
/ 05 ноября 2019

Lettuce Core API имеет класс RedisClient, который содержит следующие методы:

public StatefulRedisConnection<String, String> connect() {
      return this.connect(this.newStringStringCodec());
}

public <K, V> StatefulRedisConnection<K, V> connect(RedisCodec<K, V> codec) {
      this.checkForRedisURI();
      return (StatefulRedisConnection)this.getConnection(this.connectStandaloneAsync(codec, this.redisURI, this.timeout));
}

Я хочу вызвать метод connect(RedisCodec<K, V> codec), но я не знаю, как настроить мой объект кодека, который я должен передать какпараметр для этого метода.

Мой текущий код:

val redisClient = RedisClient.create("redis://password@localhost:6379/0");
val connection = redisClient.connect();
// in this case type of connection is StatefulRedisConnection<String, String>
val redisCommands = connection.sync()

У меня также есть свой собственный класс данных.

data class MyCustomDataClassName {
  val id: UUID,
  val something: String,
  val foo: String,
  val bar: String
}

Я хочу написать этот код:

val redisClient = RedisClient.create("redis://password@localhost:6379/0");
val codec = /* should be something that returns object of type StatefulRedisConnection<String, MyCustomDataClassName>*/
val connection = redisClient.connect(codec);
val redisCommands = connection.sync()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...