en resumen, ¿hay alguna manera de definir un mensaje protobuf que contenga otro mensaje de tipo arbitrario? Algo así como:Protobuf: anidando un mensaje de tipo arbitrario
message OuterMsg {
required int32 type = 1;
required Message nestedMsg = 2; //Any sort of message can go here
}
Sospecho que hay una manera de hacer esto debido a que en las diversas protobuf-implementaciones, los mensajes compilados se extienden desde una clase común Message
base.
De lo contrario, supongo que tengo que crear un mensaje de base común para todo tipo de mensajes como este:
message BaseNestedMessage {
extensions 1 to max;
}
y luego hacer
message OuterMessage {
required int32 type = 1;
required BaseNestedMessage nestedMsg = 2;
}
Es esta la única manera de lograr esto?
Como no puedo conocer todos los mensajes posibles con anticipación, iré por la solución de serialización por separado, utilizando un campo 'bytes', gracias – DeX3