private static final class GeneratedMessage.FieldAccessorTable.SingularStringFieldAccessor extends GeneratedMessage.FieldAccessorTable.SingularFieldAccessor
This class makes getFooBytes() and setFooBytes() available for reflection API so that reflection based serialize/parse functions can access the raw bytes of the field to preserve non-UTF8 bytes in the string.
This ensures the serialize/parse round-trip safety, which is important for servers which forward messages.
| Modifier and Type | Field and Description |
|---|---|
private java.lang.reflect.Method |
getBytesMethod |
private java.lang.reflect.Method |
getBytesMethodBuilder |
private java.lang.reflect.Method |
setBytesMethodBuilder |
caseMethod, caseMethodBuilder, clearMethod, field, getMethod, getMethodBuilder, hasHasMethod, hasMethod, hasMethodBuilder, isOneofField, setMethod, type| Constructor and Description |
|---|
SingularStringFieldAccessor(Descriptors.FieldDescriptor descriptor,
java.lang.String camelCaseName,
java.lang.Class<? extends GeneratedMessage> messageClass,
java.lang.Class<? extends GeneratedMessage.Builder> builderClass,
java.lang.String containingOneofCamelCaseName) |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
getRaw(GeneratedMessage.Builder builder) |
java.lang.Object |
getRaw(GeneratedMessage message) |
void |
set(GeneratedMessage.Builder builder,
java.lang.Object value) |
addRepeated, clear, get, get, getBuilder, getRepeated, getRepeated, getRepeatedBuilder, getRepeatedCount, getRepeatedCount, getRepeatedRaw, getRepeatedRaw, has, has, newBuilder, setRepeatedprivate final java.lang.reflect.Method getBytesMethod
private final java.lang.reflect.Method getBytesMethodBuilder
private final java.lang.reflect.Method setBytesMethodBuilder
SingularStringFieldAccessor(Descriptors.FieldDescriptor descriptor, java.lang.String camelCaseName, java.lang.Class<? extends GeneratedMessage> messageClass, java.lang.Class<? extends GeneratedMessage.Builder> builderClass, java.lang.String containingOneofCamelCaseName)
public java.lang.Object getRaw(GeneratedMessage message)
getRaw in interface GeneratedMessage.FieldAccessorTable.FieldAccessorgetRaw in class GeneratedMessage.FieldAccessorTable.SingularFieldAccessorpublic java.lang.Object getRaw(GeneratedMessage.Builder builder)
getRaw in interface GeneratedMessage.FieldAccessorTable.FieldAccessorgetRaw in class GeneratedMessage.FieldAccessorTable.SingularFieldAccessorpublic void set(GeneratedMessage.Builder builder, java.lang.Object value)
set in interface GeneratedMessage.FieldAccessorTable.FieldAccessorset in class GeneratedMessage.FieldAccessorTable.SingularFieldAccessor