Ну, я просто решил составить список пакетов, которые должны быть декодированы, а затем создать декодер со списком декодеров, которые расширяют протобуфный декодер, и сделать так, чтобы он просматривал все декодеры и проверял, правильно ли он был проанализирован и вернуть объект, если он был. Источник здесь (MultiplePacketDecoder должен быть добавлен в конвейер со списком SinglePacketDecoder, добавленным в его конструктор)