Skip to content

Protocol Buffers compatibility

Vladyslav Taranov edited this page Mar 5, 2016 · 8 revisions

AqlaSerializer supports Google Protocol Buffers binary protocol in compatibility mode where all the advanced features (like null support, reference tracking, etc) are disabled.

You can specify it when creating RuntimeTypeModel:

TypeModel.Create(true, ProtoCompatibilitySettingsValue.FullCompatibility);

Some of the advanced features can be used for Google Protocol Buffers serialization but they would require advanced schema definitions to be included in your proto schema. Those definitions are not ready yet so this possibility is only theoretical. This will be improved in later versions.

If you use the compatibility mode to communicate with protobuf-net you should ensure that you are not using its reference-tracking or null support on its side.

Protogen was removed from the project. You can still download Protogen from the protobuf-net repository and use it to generate .NET classes from .proto files. In this case you also need to reference the original protobuf-net dll to be able to use its attributes.

Mind that while the support for Google Protocol Buffers is important for us still project primarily target is .NET and we will optimize for it.

Clone this wiki locally