Class ProtobufJsonFormatHttpMessageConverter
- java.lang.Object
- org.springframework.http.converter.AbstractHttpMessageConverter<com.google.protobuf.Message>
- org.springframework.http.converter.protobuf.ProtobufHttpMessageConverter
- org.springframework.http.converter.protobuf.ProtobufJsonFormatHttpMessageConverter
- All Implemented Interfaces:
HttpMessageConverter<com.google.protobuf.Message>
public class ProtobufJsonFormatHttpMessageConverter extends ProtobufHttpMessageConverter
Subclass ofProtobufHttpMessageConverter
which enforces the use of Protobuf 3 and its official library"com.google.protobuf:protobuf-java-util"
for JSON processing.Most importantly, this class allows for custom JSON parser and printer configurations through the
JsonFormat
utility. If no special parser or printer configuration is given, default variants will be used instead.Requires Protobuf 3.x and
"com.google.protobuf:protobuf-java-util"
3.x, with 3.3 or higher recommended.- Since:
- 5.0
- Author:
- Juergen Hoeller, Sebastien Deleuze
- See Also:
JsonFormat.parser()
,JsonFormat.printer()
,ProtobufJsonFormatHttpMessageConverter(com.google.protobuf.util.JsonFormat.Parser, com.google.protobuf.util.JsonFormat.Printer)
Field Summary
Fields inherited from class org.springframework.http.converter.protobuf.ProtobufHttpMessageConverter
DEFAULT_CHARSET, PROTOBUF, X_PROTOBUF_MESSAGE_HEADER, X_PROTOBUF_SCHEMA_HEADER
Fields inherited from class org.springframework.http.converter.AbstractHttpMessageConverter
logger
Constructor Summary
Constructors Constructor Description ProtobufJsonFormatHttpMessageConverter()
Constructor with default instances ofJsonFormat.Parser
,JsonFormat.Printer
, andExtensionRegistry
.ProtobufJsonFormatHttpMessageConverter(com.google.protobuf.util.JsonFormat.Parser parser, com.google.protobuf.util.JsonFormat.Printer printer)
Constructor with given instances ofJsonFormat.Parser
,JsonFormat.Printer
, and a default instance ofExtensionRegistry
.ProtobufJsonFormatHttpMessageConverter(com.google.protobuf.util.JsonFormat.Parser parser, com.google.protobuf.util.JsonFormat.Printer printer, com.google.protobuf.ExtensionRegistry extensionRegistry)
Constructor with given instances ofJsonFormat.Parser
,JsonFormat.Printer
, andExtensionRegistry
.ProtobufJsonFormatHttpMessageConverter(com.google.protobuf.util.JsonFormat.Parser parser, com.google.protobuf.util.JsonFormat.Printer printer, ExtensionRegistryInitializer registryInitializer)
Method Summary
Methods inherited from class org.springframework.http.converter.protobuf.ProtobufHttpMessageConverter
canWrite, getDefaultContentType, readInternal, supports, writeInternal
Methods inherited from class org.springframework.http.converter.AbstractHttpMessageConverter
addDefaultHeaders, canRead, canRead, canWrite, getContentLength, getDefaultCharset, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, write
Constructor Detail
ProtobufJsonFormatHttpMessageConverter
public ProtobufJsonFormatHttpMessageConverter()
Constructor with default instances ofJsonFormat.Parser
,JsonFormat.Printer
, andExtensionRegistry
.
ProtobufJsonFormatHttpMessageConverter
public ProtobufJsonFormatHttpMessageConverter(@Nullable com.google.protobuf.util.JsonFormat.Parser parser, @Nullable com.google.protobuf.util.JsonFormat.Printer printer)
Constructor with given instances ofJsonFormat.Parser
,JsonFormat.Printer
, and a default instance ofExtensionRegistry
.
ProtobufJsonFormatHttpMessageConverter
public ProtobufJsonFormatHttpMessageConverter(@Nullable com.google.protobuf.util.JsonFormat.Parser parser, @Nullable com.google.protobuf.util.JsonFormat.Printer printer, @Nullable com.google.protobuf.ExtensionRegistry extensionRegistry)
Constructor with given instances ofJsonFormat.Parser
,JsonFormat.Printer
, andExtensionRegistry
.
ProtobufJsonFormatHttpMessageConverter
@Deprecated public ProtobufJsonFormatHttpMessageConverter(@Nullable com.google.protobuf.util.JsonFormat.Parser parser, @Nullable com.google.protobuf.util.JsonFormat.Printer printer, @Nullable ExtensionRegistryInitializer registryInitializer)
Deprecated.Construct a newProtobufJsonFormatHttpMessageConverter
with the givenJsonFormat.Parser
andJsonFormat.Printer
configuration, also accepting an initializer that allows the registration of message extensions.- Parameters:
parser
- the JSON parser configurationprinter
- the JSON printer configurationregistryInitializer
- an initializer for message extensions