private static final class GeneratedMessageV3.FieldAccessorTable.SingularStringFieldAccessor extends GeneratedMessageV3.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 GeneratedMessageV3> messageClass,
java.lang.Class<? extends GeneratedMessageV3.Builder> builderClass,
java.lang.String containingOneofCamelCaseName) |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
getRaw(GeneratedMessageV3.Builder builder) |
java.lang.Object |
getRaw(GeneratedMessageV3 message) |
void |
set(GeneratedMessageV3.Builder builder,
java.lang.Object value) |
addRepeated, clear, get, get, getBuilder, getRepeated, getRepeated, getRepeatedBuilder, getRepeatedCount, getRepeatedCount, getRepeatedRaw, getRepeatedRaw, has, has, newBuilder, setRepeated
private 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 GeneratedMessageV3> messageClass, java.lang.Class<? extends GeneratedMessageV3.Builder> builderClass, java.lang.String containingOneofCamelCaseName)
public java.lang.Object getRaw(GeneratedMessageV3 message)
getRaw
in interface GeneratedMessageV3.FieldAccessorTable.FieldAccessor
getRaw
in class GeneratedMessageV3.FieldAccessorTable.SingularFieldAccessor
public java.lang.Object getRaw(GeneratedMessageV3.Builder builder)
getRaw
in interface GeneratedMessageV3.FieldAccessorTable.FieldAccessor
getRaw
in class GeneratedMessageV3.FieldAccessorTable.SingularFieldAccessor
public void set(GeneratedMessageV3.Builder builder, java.lang.Object value)
set
in interface GeneratedMessageV3.FieldAccessorTable.FieldAccessor
set
in class GeneratedMessageV3.FieldAccessorTable.SingularFieldAccessor