public final String getSimpleName() { return element.getSimpleName().toString(); }
@Override public Void visitType(TypeElement parent, TypeElement type) { nextRound.put(parent.getSimpleName() + "." + type.getSimpleName(), type); importMap.put(type, parent); return null; }
private String getClassString(TypeElement typeElement, String myPackage) { PackageElement packageElement = getPackageElement(typeElement); String packageString = packageElement.getQualifiedName().toString(); String className = typeElement.getQualifiedName().toString(); if (packageString != null && !packageString.isEmpty()) { if (packageString.equals(myPackage)) { className = cutPackage(myPackage, className); } else if (packageString.equals("java.lang")) { className = typeElement.getSimpleName().toString(); } } return className; }
private String unambigousSimpleName(Set<String> simpleNames, TypeElement e) { String base = CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_CAMEL, e.getSimpleName().toString()); String simple = base; for (int c = 0; !simpleNames.add(simple); c++) { simple = base + c; } return simple; }
public ClassCreator(@NonNull TypeElement baseAnnotation, Configuration configuration, @NonNull ProcessingEnvironment processingEnv) { this.baseAnnotation = baseAnnotation; this.configuration = configuration; this.processingEnv = processingEnv; configName = baseAnnotation.getSimpleName().toString().replace("Acra", "") + "Configuration"; builderVisibleName = configName + "Builder"; builderName = configuration.isPlugin() ? builderVisibleName + "Impl" : builderVisibleName; factoryName = builderVisibleName + "Factory"; }
public RClass(TypeElement rClassElement) { List<TypeElement> rInnerTypeElements = extractRInnerTypeElements(rClassElement); for (TypeElement rInnerTypeElement : rInnerTypeElements) { RInnerClass rInnerClass = new RInnerClass(rInnerTypeElement); rClass.put(rInnerTypeElement.getSimpleName().toString(), rInnerClass); } }
private static ClassName moduleElementToLoaderClassName(TypeElement element) { return ClassName.get(getPackage(element).getQualifiedName().toString(), element.getSimpleName().toString() + "Loader"); }
private void collectBuiltins(Map<String, TypeMirror> collected) { for (TypeKind kind : TypeKind.values()) { if (kind.isPrimitive()) { TypeElement boxedClass = types.boxedClass(types.getPrimitiveType(kind)); collected.put(boxedClass.getSimpleName().toString(), boxedClass.asType()); } } TypeElement typeElement = elements.getTypeElement(String.class.getCanonicalName()); collected.put(typeElement.getSimpleName().toString(), typeElement.asType()); typeElement = elements.getTypeElement(Templates.Invokable.class.getCanonicalName()); collected.put(typeElement.getSimpleName().toString(), typeElement.asType()); }
static String getClassFQName(TypeElement elem) { StringBuilder name = new StringBuilder(); while (isClassy(elem.getEnclosingElement().getKind())) { name.insert(0, "$" + elem.getSimpleName()); elem = (TypeElement) elem.getEnclosingElement(); } name.insert(0, elem.getQualifiedName()); return name.toString(); }
private @Nullable NullabilityAnnotationInfo isAccessorNullableAccessor(Element element) { for (AnnotationMirror annotation : element.getAnnotationMirrors()) { TypeElement annotationElement = (TypeElement) annotation.getAnnotationType().asElement(); Name simpleName = annotationElement.getSimpleName(); Name qualifiedName = annotationElement.getQualifiedName(); if (isNullableAnnotation(simpleName, qualifiedName)) { return ImmutableNullabilityAnnotationInfo.of(annotationElement); } } return null; }
private Type createType(TypeElement typeElement, TypeCategory category, List<? extends TypeMirror> typeArgs, boolean deep) { String name = typeElement.getQualifiedName().toString(); String simpleName = typeElement.getSimpleName().toString(); String packageName = env.getElementUtils().getPackageOf(typeElement).getQualifiedName().toString(); Type[] params = new Type[typeArgs.size()]; for (int i = 0; i < params.length; i++) { params[i] = getType(typeArgs.get(i), deep); } return new SimpleType(category, name, packageName, simpleName, false, typeElement.getModifiers().contains(Modifier.FINAL), params); }
private ControllerClassInfo getOrCreateTargetClass( Map<TypeElement, ControllerClassInfo> controllerClassMap, TypeElement controllerClassElement) { if (!isController(controllerClassElement)) { errorLogger.logError("Class with %s annotations must extend %s (%s)", AutoModel.class.getSimpleName(), EPOXY_CONTROLLER_TYPE, controllerClassElement.getSimpleName()); } ControllerClassInfo controllerClassInfo = controllerClassMap.get(controllerClassElement); if (controllerClassInfo == null) { controllerClassInfo = new ControllerClassInfo(elementUtils, controllerClassElement); controllerClassMap.put(controllerClassElement, controllerClassInfo); } return controllerClassInfo; }
processingEnv.getMessager().printMessage(Diagnostic.Kind.NOTE, "Indexed @Subscribe at " + method.getEnclosingElement().getSimpleName() + "." + methodName + "(" + paramElement.getSimpleName() + ")");
public String generatedClassQualifiedNameFromQualifiedName(String qualifiedName) { TypeElement type = typeElementFromQualifiedName(qualifiedName); if (type.getNestingKind() == NestingKind.MEMBER) { String parentGeneratedClass = generatedClassQualifiedNameFromQualifiedName(type.getEnclosingElement().asType().toString()); return parentGeneratedClass + "." + type.getSimpleName().toString() + classSuffix(); } else { return qualifiedName + classSuffix(); } }
private static boolean match(EntityDescriptor entity, String referenceName) { return (entity.typeName().className().equals(referenceName) || entity.element().getSimpleName().contentEquals(referenceName)); }
@Override public String tableName() { return annotationOf(Table.class).map(Table::name) .orElse( annotationOf(javax.persistence.Table.class) .map(javax.persistence.Table::name) .orElse( annotationOf(View.class).map(View::name) .orElse( element().getKind().isInterface() || isImmutable() ? element().getSimpleName().toString() : Names.removeClassPrefixes(element().getSimpleName())))); }
public void componentRegistered(Element element, AndroidManifest androidManifest, boolean printWarning, ElementValidation valid) { TypeElement typeElement = (TypeElement) element; if (typeElement.getModifiers().contains(Modifier.ABSTRACT)) { return; } if (androidManifest.isLibraryProject()) { return; } String componentQualifiedName = typeElement.getQualifiedName().toString(); String generatedComponentQualifiedName = componentQualifiedName + classSuffix(); List<String> componentQualifiedNames = androidManifest.getComponentQualifiedNames(); if (!componentQualifiedNames.contains(generatedComponentQualifiedName)) { String simpleName = typeElement.getSimpleName().toString(); String generatedSimpleName = simpleName + classSuffix(); if (componentQualifiedNames.contains(componentQualifiedName)) { valid.addError("The AndroidManifest.xml file contains the original component, and not the AndroidAnnotations generated component. Please register " + generatedSimpleName + " instead of " + simpleName); } else { if (printWarning) { valid.addWarning("The component " + generatedSimpleName + " is not registered in the AndroidManifest.xml file."); } } } }
private void registerType(TypeElement type) { if (type != null && !importMap.containsKey(type)) { typeMap.put(type.getSimpleName().toString(), type); importMap.put(type, type); for (TypeParameterElement typeParam : type.getTypeParameters()) { for (TypeMirror bound : typeParam.getBounds()) { // FIXME: get rid of cast using a visitor TypeElement boundElement = TYPE_ELEMENT_VISITOR.visit(helpers.asElement(bound)); registerType(boundElement); } } } }
private void createEditorClass() throws JClassAlreadyExistsException { String interfaceSimpleName = annotatedElement.getSimpleName().toString(); editorClass = generatedClass._class(PUBLIC | STATIC | FINAL, interfaceSimpleName + "Editor" + classSuffix()); editorClass._extends(getJClass(EditorHelper.class).narrow(editorClass)); createEditorConstructor(); }
protected void setGeneratedClass() throws Exception { String annotatedComponentQualifiedName = annotatedElement.getQualifiedName().toString(); annotatedClass = getCodeModel().directClass(annotatedElement.asType().toString()); if (annotatedElement.getNestingKind().isNested()) { Element enclosingElement = annotatedElement.getEnclosingElement(); GeneratedClassHolder enclosingHolder = environment.getGeneratedClassHolder(enclosingElement); String generatedBeanSimpleName = annotatedElement.getSimpleName().toString() + classSuffix(); int modifier = PUBLIC | STATIC; if (environment.getOptionBooleanValue(OPTION_GENERATE_FINAL_CLASSES)) { modifier |= FINAL; } generatedClass = enclosingHolder.getGeneratedClass()._class(modifier, generatedBeanSimpleName, EClassType.CLASS); } else { String generatedClassQualifiedName = annotatedComponentQualifiedName + classSuffix(); int modifier = PUBLIC; if (environment.getOptionBooleanValue(OPTION_GENERATE_FINAL_CLASSES)) { modifier |= FINAL; } generatedClass = getCodeModel()._class(modifier, generatedClassQualifiedName, EClassType.CLASS); } codeModelHelper.generify(generatedClass, annotatedElement); setExtends(); codeModelHelper.copyNonAAAnnotations(generatedClass, annotatedElement.getAnnotationMirrors()); }