Package io.servicetalk.grpc.protobuf
Class ProtoBufSerializationProviderBuilder
- java.lang.Object
-
- io.servicetalk.grpc.protobuf.ProtoBufSerializationProviderBuilder
-
public final class ProtoBufSerializationProviderBuilder extends java.lang.Object
A builder for building aGrpcSerializationProvider
that can serialize and deserialize pre-registered protocol buffer objects.registerMessageType(Class, Parser)
is used to add one or moreMessageLite
message types. ResultingGrpcSerializationProvider
frombuild()
will only serialize and deserialize those message types.
-
-
Constructor Summary
Constructors Constructor Description ProtoBufSerializationProviderBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GrpcSerializationProvider
build()
Builds a newGrpcSerializationProvider
containing all the message types registered with this builder.<T extends com.google.protobuf.MessageLite>
ProtoBufSerializationProviderBuilderregisterMessageType(java.lang.Class<T> messageType, com.google.protobuf.Parser<T> parser)
Register the passedmessageType
with the providedParser
.<T extends com.google.protobuf.MessageLite>
ProtoBufSerializationProviderBuildersupportedMessageCodings(java.util.List<ContentCodec> supportedCodings)
Set the supported message encodings for the serializers and deserializers.
-
-
-
Method Detail
-
supportedMessageCodings
public <T extends com.google.protobuf.MessageLite> ProtoBufSerializationProviderBuilder supportedMessageCodings(java.util.List<ContentCodec> supportedCodings)
Set the supported message encodings for the serializers and deserializers. The encodings will be advertised on the endpoint's headers and also used to validate each encoded messageContentCodings.identity()
is always supported regardless of the config passed- Type Parameters:
T
- Type ofMessageLite
to register.- Parameters:
supportedCodings
- the set of allowed encodings- Returns:
this
-
registerMessageType
public <T extends com.google.protobuf.MessageLite> ProtoBufSerializationProviderBuilder registerMessageType(java.lang.Class<T> messageType, com.google.protobuf.Parser<T> parser)
Register the passedmessageType
with the providedParser
.- Type Parameters:
T
- Type ofMessageLite
to register.- Parameters:
messageType
-Class
of the type of message to register.parser
-Parser
for this message type.- Returns:
this
-
build
public GrpcSerializationProvider build()
Builds a newGrpcSerializationProvider
containing all the message types registered with this builder.- Returns:
- New
GrpcSerializationProvider
that will serialize and deserialize message types that were registered to this builder.
-
-