diff --git a/java/dagger/hilt/android/processor/internal/androidentrypoint/ApplicationGenerator.java b/java/dagger/hilt/android/processor/internal/androidentrypoint/ApplicationGenerator.java index d64196afaaf..8347b0ea726 100644 --- a/java/dagger/hilt/android/processor/internal/androidentrypoint/ApplicationGenerator.java +++ b/java/dagger/hilt/android/processor/internal/androidentrypoint/ApplicationGenerator.java @@ -151,9 +151,6 @@ private MethodSpec componentManagerMethod() { // } // } private TypeSpec creatorType() { - ClassName component = - componentNames.generatedComponent( - metadata.elementClassName(), AndroidClassNames.SINGLETON_COMPONENT); return TypeSpec.anonymousClassBuilder("") .addSuperinterface(AndroidClassNames.COMPONENT_SUPPLIER) .addMethod( @@ -161,17 +158,27 @@ private TypeSpec creatorType() { .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .returns(TypeName.OBJECT) - .addStatement( - "return $T.builder()\n" - + ".applicationContextModule(new $T($T.this))\n" - + ".build()", - Processors.prepend(Processors.getEnclosedClassName(component), "Dagger"), - AndroidClassNames.APPLICATION_CONTEXT_MODULE, - wrapperClassName) + .addCode(componentBuilder()) .build()) .build(); } + // return DaggerApplicationComponent.builder() + // .applicationContextModule(new ApplicationContextModule(Hilt_$APP.this)) + // .build(); + private CodeBlock componentBuilder() { + ClassName component = + componentNames.generatedComponent( + metadata.elementClassName(), AndroidClassNames.SINGLETON_COMPONENT); + return CodeBlock.builder() + .addStatement( + "return $T.builder()$Z" + ".applicationContextModule(new $T($T.this))$Z" + ".build()", + Processors.prepend(Processors.getEnclosedClassName(component), "Dagger"), + AndroidClassNames.APPLICATION_CONTEXT_MODULE, + wrapperClassName) + .build(); + } + // @CallSuper // @Override // public void onCreate() { diff --git a/java/dagger/hilt/android/processor/internal/androidentrypoint/BUILD b/java/dagger/hilt/android/processor/internal/androidentrypoint/BUILD index 61cd581cf74..46bcdd6d3d6 100644 --- a/java/dagger/hilt/android/processor/internal/androidentrypoint/BUILD +++ b/java/dagger/hilt/android/processor/internal/androidentrypoint/BUILD @@ -40,6 +40,7 @@ java_library( "//java/dagger/hilt/processor/internal:base_processor", "//java/dagger/hilt/processor/internal:compiler_options", "//java/dagger/hilt/processor/internal:processor_errors", + "//java/dagger/hilt/processor/internal:processors", "//third_party/java/auto:service", "//third_party/java/guava/collect", "//third_party/java/incap", diff --git a/java/dagger/hilt/processor/internal/root/BUILD b/java/dagger/hilt/processor/internal/root/BUILD index 3eeb1a750fa..126662c02a2 100644 --- a/java/dagger/hilt/processor/internal/root/BUILD +++ b/java/dagger/hilt/processor/internal/root/BUILD @@ -84,6 +84,8 @@ java_library( deps = [ ":root_metadata", ":root_type", + "//java/dagger/hilt/android/processor/internal/androidentrypoint:android_generators", + "//java/dagger/hilt/android/processor/internal/androidentrypoint:metadata", "//java/dagger/hilt/processor/internal:aggregated_elements", "//java/dagger/hilt/processor/internal:base_processor", "//java/dagger/hilt/processor/internal:classnames", diff --git a/java/dagger/hilt/processor/internal/root/ComponentTreeDepsProcessor.java b/java/dagger/hilt/processor/internal/root/ComponentTreeDepsProcessor.java index d2fb58dcbad..85eb59a4776 100644 --- a/java/dagger/hilt/processor/internal/root/ComponentTreeDepsProcessor.java +++ b/java/dagger/hilt/processor/internal/root/ComponentTreeDepsProcessor.java @@ -195,7 +195,10 @@ private void generateApplication(TypeElement rootElement) throws IOException { if (!useAggregatingRootProcessor(getProcessingEnv())) { AndroidEntryPointMetadata metadata = AndroidEntryPointMetadata.of(getProcessingEnv(), rootElement); - new ApplicationGenerator(getProcessingEnv(), metadata).generate(); + new ApplicationGenerator( + getProcessingEnv(), + metadata) + .generate(); } } } diff --git a/java/dagger/hilt/processor/internal/root/RootType.java b/java/dagger/hilt/processor/internal/root/RootType.java index 807f71d7394..a6efc84fd33 100644 --- a/java/dagger/hilt/processor/internal/root/RootType.java +++ b/java/dagger/hilt/processor/internal/root/RootType.java @@ -23,13 +23,13 @@ /** The valid root types for Hilt applications. */ // TODO(erichang): Fix this class so we don't have to have placeholders - enum RootType { - ROOT(ClassNames.HILT_ANDROID_APP), +enum RootType { + ROOT(ClassNames.HILT_ANDROID_APP), - // Placeholder to make sure @HiltAndroidTest usages get processed - HILT_ANDROID_TEST_ROOT(ClassNames.HILT_ANDROID_TEST), + // Placeholder to make sure @HiltAndroidTest usages get processed + HILT_ANDROID_TEST_ROOT(ClassNames.HILT_ANDROID_TEST), - TEST_ROOT(ClassNames.INTERNAL_TEST_ROOT); + TEST_ROOT(ClassNames.INTERNAL_TEST_ROOT); @SuppressWarnings("ImmutableEnumChecker") private final ClassName annotation;