Собственно есть два енума, которым я прилепил общий интерфейс, этот интерфейс указан в дто, которая сериализуется джексоном и отправляется клиенту. Потом её нужно десериализовать обратно в дто, но тут возникает проблема: джексон не знает, какой из 2х енумов нужно туда подставить.
Собственно какие есть варианты?
Первое, что приходит на ум - запихнуть все в один енум, добавив префиксы к значениям самого енума. Но они как-бы разные, потом в разных свитчах юзаются. Да и топорно как-то.
Второй, как мне кажется, можно добавлять какой-нибудь префикс к уже сериализованному значению и использовать этот префикс при десереализации, чтоб понять, какой конкретно нужен енум. Вот такое можно будет как-то реализовать?
Третьего варианта я не придумал, но может есть еще варианты? Было бы интересно узнать. Или лучше не трахать себе мозг и пойти по первому пути?
Dmitry Roo, я понимаю о чем вы говорите, там изначально только один енум был, но потом пришли новые требования, появился второй, пришлось еще интерфейс им добавить, чтоб в общее дто запихнуть.
Там дальше идет логика если инстансоф первый енум, то вызывается один класс, если другой енум - то другой класс. В общем, как мне кажется, я выбрал меньшее из зол.