public interface Schema<T>
Basically, any object can be serialized via protobuf. As long as its schema is provided, it does not need to
implement Message. This was designed with "unobtrusive" in mind. The goal was to be able to
serialize/deserialize any existing object without having to touch its source. This will enable you to customize the
serialization of objects from 3rd party libraries.
| Modifier and Type | Method and Description |
|---|---|
String |
getFieldName(int number)
Gets the field name associated with the number.
|
int |
getFieldNumber(String name)
Gets the field number associated with the name.
|
boolean |
isInitialized(T message)
Returns true if there is no required field or if all the required fields are set.
|
void |
mergeFrom(Input input,
T message)
Deserializes a message/object from the
input. |
String |
messageFullName()
Returns the full name of the message tied to this schema.
|
String |
messageName()
Returns the simple name of the message tied to this schema.
|
T |
newMessage()
Creates the message/object tied to this schema.
|
Class<? super T> |
typeClass()
Gets the class of the message.
|
void |
writeTo(Output output,
T message)
Serializes a message/object to the
output. |
String getFieldName(int number)
return String.valueOf(number);
int getFieldNumber(String name)
return Integer.parseInt(name);
boolean isInitialized(T message)
T newMessage()
String messageName()
String messageFullName()
void mergeFrom(Input input, T message) throws IOException
input.IOExceptionvoid writeTo(Output output, T message) throws IOException
output.IOExceptionCopyright © 2009–2022. All rights reserved.