Как сопоставить EnumMap со столбцом кассандры? - PullRequest
0 голосов
/ 13 декабря 2018

Мне нужно сопоставить EnumMap со столбцом данных cassandra.Класс сущности выглядит следующим образом:

@Table
class ContainingEnumMap {
   @PrimaryKey
   String key;
   @Column
   Map<SomeEnum, String> map;
}

Если я регистрирую EnumNameCodec, экземпляры вышеуказанного класса должным образом записываются в базу данных, однако, если они считываются, я получаю ClassCastException, так какключи карты на самом деле являются строками.Если я явно использую атрибут EnumMap, я получаю аналогичные исключения, поскольку ключи по-прежнему являются строками (а не экземплярами enum).Попытка аннотировать столбец карты с помощью

@CassandraType(type = DataType.Name.MAP)

ни к чему не привела, поскольку для перечислений нет надлежащих констант DataType.Name.

Есть ли способ добиться этого?

...