Десериализация различных типов событий по той же теме - PullRequest
0 голосов
/ 29 мая 2020

У меня есть очередь kafka с разными типами сообщений в ней, я использую класс java для сериализации их в Json, чтобы kafka topi c содержал строку события Json. Я пытаюсь найти способ десериализации этих событий, используя имя класса

Это класс:

public class MyClass {
    Metadata meta;
    Object anyPayload;
}

И класс medatada:

public class Medatada {
    String anyPayloadCanonicalName
}

Я использую поле anyPayloadCanonicalName, чтобы узнать, какой тип является anyPayload, и иметь возможность десериализовать его.

Я публикую MyClass в kafka topi c, и при использовании этих сообщений я хочу иметь возможность десериализовать эти события.

Я использую Gson для десериализации, я думаю, что напишу какой-нибудь обработчик десериализатора Json, который сначала анализирует строку Json и находит anyPayloadCanonicalName, чтобы разрешить что такое anyPayload.

Я не уверен, что это правильный способ сделать это, интересно, это ли способ десериализации, когда у вас есть topi c с разными типами сообщений.

...