final class ProtoMessageTypeMetadata extends ProtoTypeMetadata
| Modifier and Type | Field and Description |
|---|---|
private java.util.Map<java.lang.Integer,ProtoFieldMetadata> |
fields |
private java.util.Map<java.lang.Class<?>,ProtoTypeMetadata> |
innerTypes |
private ProtoSchemaGenerator |
protoSchemaGenerator |
private java.lang.reflect.Field |
unknownFieldSetField |
private java.lang.reflect.Method |
unknownFieldSetGetter |
private java.lang.reflect.Method |
unknownFieldSetSetter |
documentation, javaClass, marshaller, name, outerType| Constructor and Description |
|---|
ProtoMessageTypeMetadata(ProtoSchemaGenerator protoSchemaGenerator,
java.lang.Class<?> messageClass) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addInnerType(ProtoTypeMetadata typeMetadata) |
private void |
checkConstructor() |
private static java.lang.Class<?> |
determineCollectionElementType(java.lang.reflect.Type genericType) |
private static java.lang.Class<?> |
determineElementType(java.lang.Class<?> type,
java.lang.reflect.Type genericType) |
private void |
discoverFields(java.lang.Class<?> clazz,
java.util.Set<java.lang.Class<?>> examinedClasses,
java.util.Map<java.lang.Integer,ProtoFieldMetadata> fieldsByNumber,
java.util.Map<java.lang.String,ProtoFieldMetadata> fieldsByName) |
private java.lang.reflect.Method |
findGetter(java.lang.String propertyName,
java.lang.Class<?> propertyType) |
private java.lang.reflect.Method |
findSetter(java.lang.String propertyName,
java.lang.Class<?> propertyType) |
void |
generateProto(IndentWriter iw) |
private java.lang.Class<?> |
getCollectionImplementation(java.lang.Class<?> clazz,
java.lang.Class<?> fieldType,
java.lang.Class<?> configuredCollection,
java.lang.String fieldName,
boolean isRepeated) |
private java.lang.Object |
getDefaultValue(java.lang.Class<?> clazz,
java.lang.String fieldName,
java.lang.Class<?> fieldType,
java.lang.String defaultValue) |
java.util.Map<java.lang.Integer,ProtoFieldMetadata> |
getFields() |
private Type |
getProtobufType(java.lang.Class<?> javaType,
Type type) |
private static java.lang.String |
getProtoName(java.lang.Class<?> messageClass) |
java.lang.reflect.Field |
getUnknownFieldSetField() |
java.lang.reflect.Method |
getUnknownFieldSetGetter() |
java.lang.reflect.Method |
getUnknownFieldSetSetter() |
boolean |
isEnum() |
private boolean |
isRepeated(java.lang.Class<?> type) |
void |
scanMemberAnnotations() |
getDocumentation, getFullName, getJavaClass, getMarshaller, getName, getOuterType, isTopLevel, setMarshaller, setOuterTypeprivate final ProtoSchemaGenerator protoSchemaGenerator
private java.util.Map<java.lang.Integer,ProtoFieldMetadata> fields
private java.lang.reflect.Field unknownFieldSetField
private java.lang.reflect.Method unknownFieldSetGetter
private java.lang.reflect.Method unknownFieldSetSetter
private final java.util.Map<java.lang.Class<?>,ProtoTypeMetadata> innerTypes
public ProtoMessageTypeMetadata(ProtoSchemaGenerator protoSchemaGenerator, java.lang.Class<?> messageClass)
private static java.lang.String getProtoName(java.lang.Class<?> messageClass)
public java.lang.reflect.Field getUnknownFieldSetField()
public java.lang.reflect.Method getUnknownFieldSetGetter()
public java.lang.reflect.Method getUnknownFieldSetSetter()
public java.util.Map<java.lang.Integer,ProtoFieldMetadata> getFields()
protected void addInnerType(ProtoTypeMetadata typeMetadata)
public void generateProto(IndentWriter iw)
generateProto in class ProtoTypeMetadatapublic boolean isEnum()
isEnum in class ProtoTypeMetadatapublic void scanMemberAnnotations()
scanMemberAnnotations in class ProtoTypeMetadataprivate void checkConstructor()
private void discoverFields(java.lang.Class<?> clazz,
java.util.Set<java.lang.Class<?>> examinedClasses,
java.util.Map<java.lang.Integer,ProtoFieldMetadata> fieldsByNumber,
java.util.Map<java.lang.String,ProtoFieldMetadata> fieldsByName)
private java.lang.Object getDefaultValue(java.lang.Class<?> clazz,
java.lang.String fieldName,
java.lang.Class<?> fieldType,
java.lang.String defaultValue)
private java.lang.Class<?> getCollectionImplementation(java.lang.Class<?> clazz,
java.lang.Class<?> fieldType,
java.lang.Class<?> configuredCollection,
java.lang.String fieldName,
boolean isRepeated)
private boolean isRepeated(java.lang.Class<?> type)
private java.lang.reflect.Method findGetter(java.lang.String propertyName,
java.lang.Class<?> propertyType)
private java.lang.reflect.Method findSetter(java.lang.String propertyName,
java.lang.Class<?> propertyType)
private static java.lang.Class<?> determineElementType(java.lang.Class<?> type,
java.lang.reflect.Type genericType)
private static java.lang.Class<?> determineCollectionElementType(java.lang.reflect.Type genericType)