2 import "dccl/option_extensions.proto";
3 import "goby/middleware/protobuf/transporter_config.proto";
4 import "google/protobuf/descriptor.proto";
6 package goby.middleware.protobuf;
8 message SerializerProtobufMetadata
10 // defines the DCCL message for the Portal (edge) internally on interprocess
11 optional string protobuf_name = 1 [(dccl.field).omit = true];
12 repeated google.protobuf.FileDescriptorProto file_descriptor = 2
13 [(dccl.field).omit = true];
16 message SerializerTransporterKey
22 required int32 marshalling_scheme = 1;
23 required string type = 2;
24 required string group = 3;
25 optional uint32 group_numeric = 4;
26 optional uint64 serialize_time = 5
27 [(dccl.field) = {units {prefix: "micro" base_dimensions: "T"}}];
28 optional TransporterConfig cfg = 10;
29 optional SerializerProtobufMetadata metadata = 20;
32 message SerializerTransporterMessage
34 required SerializerTransporterKey key = 1;
35 optional bytes data = 4;
39 message SerializerMetadataRequest
41 required SerializerTransporterKey key = 1;
44 METADATA_INCLUDE = 1; // we need this metadata
45 METADATA_EXCLUDE = 2; // we already have the metadata
47 required Request request = 2;