use of com.squareup.protoparser.EnumConstantElement in project teiid by teiid.
the class ProtobufMetadataProcessor method getEnumOrdinal.
private String getEnumOrdinal(List<MessageElement> messageTypes, List<EnumElement> enumTypes, String name, String value) {
for (EnumElement element : enumTypes) {
if (element.name().equals(name)) {
for (EnumConstantElement constant : element.constants()) {
if (constant.name().equals(value)) {
return String.valueOf(constant.tag());
}
}
}
}
// enum does not nest, messages nest
for (MessageElement element : messageTypes) {
List<MessageElement> childMessageTypes = filter(element.nestedElements(), MessageElement.class);
List<EnumElement> childEnumTypes = filter(element.nestedElements(), EnumElement.class);
String child = getEnumOrdinal(childMessageTypes, childEnumTypes, name, value);
if (child != null) {
return child;
}
}
return null;
}
Aggregations