Package com.google.api.gax.httpjson
Class ProtoRestSerializer<RequestT extends com.google.protobuf.Message>
- java.lang.Object
-
- com.google.api.gax.httpjson.ProtoRestSerializer<RequestT>
-
@BetaApi public class ProtoRestSerializer<RequestT extends com.google.protobuf.Message> extends java.lang.ObjectThis class serializes/deserializes protobufMessagefor REST interactions. It serializes requests protobuf messages into REST messages, splitting the message into the JSON request body, URL path parameters, and query parameters. It deserializes JSON responses into response protobuf message.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <RequestT extends com.google.protobuf.Message>
ProtoRestSerializer<RequestT>create()Creates a new instance of ProtoRestSerializer.voidputPathParam(java.util.Map<java.lang.String,java.lang.String> fields, java.lang.String fieldName, java.lang.Object fieldValue)Puts a message field infieldsmap which will be used to populate URL path of a request.voidputQueryParam(java.util.Map<java.lang.String,java.util.List<java.lang.String>> fields, java.lang.String fieldName, java.lang.Object fieldValue)Puts a message field infieldsmap which will be used to populate query parameters of a request.java.lang.StringtoBody(java.lang.String fieldName, RequestT fieldValue)Serializes a message to a request body in a form of JSON-encoded string.java.lang.StringtoBody(java.lang.String fieldName, RequestT fieldValue, boolean numericEnum)Serializes a message to a request body in a form of JSON-encoded string.
-
-
-
Method Detail
-
create
public static <RequestT extends com.google.protobuf.Message> ProtoRestSerializer<RequestT> create()
Creates a new instance of ProtoRestSerializer.
-
putPathParam
public void putPathParam(java.util.Map<java.lang.String,java.lang.String> fields, java.lang.String fieldName, java.lang.Object fieldValue)Puts a message field infieldsmap which will be used to populate URL path of a request.- Parameters:
fields- a map with serialized fieldsfieldName- a field namefieldValue- a field value
-
putQueryParam
public void putQueryParam(java.util.Map<java.lang.String,java.util.List<java.lang.String>> fields, java.lang.String fieldName, java.lang.Object fieldValue)Puts a message field infieldsmap which will be used to populate query parameters of a request.- Parameters:
fields- a map with serialized fieldsfieldName- a field namefieldValue- a field value
-
toBody
public java.lang.String toBody(java.lang.String fieldName, RequestT fieldValue)Serializes a message to a request body in a form of JSON-encoded string.- Parameters:
fieldName- a name of a request message field this message belongs tofieldValue- a field value to serialize
-
toBody
public java.lang.String toBody(java.lang.String fieldName, RequestT fieldValue, boolean numericEnum)Serializes a message to a request body in a form of JSON-encoded string.- Parameters:
fieldName- a name of a request message field this message belongs tofieldValue- a field value to serializenumericEnum- a boolean flag that determine if enum values should be serialized to number
-
-