fieldDescriptor = getClassCode(genericType);
}
}
String fieldName = JavaUtils.isJavaKeyword(name) ? JavaUtils.makeNonJavaKeyword(name) : name;
FieldVisitor fv = cw.visitField(Opcodes.ACC_PRIVATE,
fieldName,
classCode,
fieldDescriptor,
null);
List<Annotation> jaxbAnnos = getJaxbAnnos(mpi);
if (!addJAXBAnnotations(fv, jaxbAnnos, name)) {
AnnotationVisitor av0 = fv.visitAnnotation("Ljavax/xml/bind/annotation/XmlElement;", true);
av0.visit("name", name);
if (factory.isWrapperPartQualified(mpi)) {
av0.visit("namespace", mpi.getConcreteName().getNamespaceURI());
}
if (factory.isWrapperPartNillable(mpi)) {
av0.visit("nillable", Boolean.TRUE);
}
if (factory.getWrapperPartMinOccurs(mpi) == 1) {
av0.visit("required", Boolean.TRUE);
}
av0.visitEnd();
}
fv.visitEnd();
String methodName = JAXBUtils.nameToIdentifier(name, JAXBUtils.IdentifierType.GETTER);
MethodVisitor mv = cw.visitMethod(Opcodes.ACC_PUBLIC, methodName, "()" + classCode,
fieldDescriptor == null ? null : "()" + fieldDescriptor,
null);