INNER CODE UNIT · Java

className

xiaojinzi123/Component · ComponentCompiler/src/main/java/com/xiaojinzi/component/AutowireProcessor.java:200

        String className = fullClassName.substring(lastPointIndex + 1);
        TypeSpec.Builder classBuilder = TypeSpec
                .classBuilder(className + ComponentConstants.INJECT_SUFFIX)
                .addAnnotation(mClassNameKeep)
                .addAnnotation(mClassNameComponentGeneratedAnno)
                .addModifiers(Modifier.PUBLIC, Modifier.FINAL)
                .addSuperinterface(ParameterizedTypeName.get(injectClassName, TypeName.get(mElements.getTypeElement(fullClassName).asType())))
                .addMethod(injectAttrValueMethod1(targetClass))
                .addMethod(injectAttrValueMethod2(targetClass, isKotlinFile, parameterFieldSet))
                .addMethod(injectServiceMethod(isKotlinFile, targetClass, parameterFieldSet));
        try {
            JavaFile.builder(pkg, classBuilder.build()
            ).indent("    ").build().writeTo(mFiler);
        } catch (IOException ignore) {
            // ignore
        }
    }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…