use of com.squareup.wire.schema.Extend in project wire by square.
the class JavaGenerator method get.
public static JavaGenerator get(Schema schema) {
Map<ProtoType, TypeName> nameToJavaName = new LinkedHashMap<>();
Map<ProtoMember, TypeName> memberToJavaName = new LinkedHashMap<>();
for (ProtoFile protoFile : schema.getProtoFiles()) {
String javaPackage = javaPackage(protoFile);
putAll(nameToJavaName, javaPackage, null, protoFile.getTypes());
for (Service service : protoFile.getServices()) {
ClassName className = ClassName.get(javaPackage, service.type().getSimpleName());
nameToJavaName.put(service.type(), className);
}
for (Extend extend : protoFile.getExtendList()) {
if (annotationTargetType(extend) == null)
continue;
for (Field field : extend.getFields()) {
if (!eligibleAsAnnotationMember(schema, field))
continue;
ProtoMember protoMember = field.getMember();
String simpleName = camelCase(protoMember.getSimpleName(), true) + "Option";
ClassName className = ClassName.get(javaPackage, simpleName);
memberToJavaName.put(protoMember, className);
}
}
}
nameToJavaName.putAll(BUILT_IN_TYPES_MAP);
return new JavaGenerator(schema, nameToJavaName, memberToJavaName, new Profile(), false, /* emitAndroid */
false, /* emitAndroidAnnotations */
false, /* emitCompact */
false, /* emitDeclaredOptions */
false);
}
Aggregations