private TypeSpec subcomponentBuilder( AndroidInjectorDescriptor descriptor, ClassName subcomponentBuilderName) { return classBuilder(subcomponentBuilderName) .addAnnotation(Builder.class) .addModifiers(PUBLIC, ABSTRACT, STATIC) .superclass(parameterizedTypeName(AndroidInjector.Builder.class, descriptor.injectedType())) .build(); }
private TypeSpec subcomponentBuilder( AndroidInjectorDescriptor descriptor, ClassName subcomponentBuilderName) { return classBuilder(subcomponentBuilderName) .addAnnotation(Builder.class) .addModifiers(PUBLIC, ABSTRACT, STATIC) .superclass(parameterizedTypeName(AndroidInjector.Builder.class, descriptor.injectedType())) .build(); }
private AnnotationSpec androidInjectorMapKey(AndroidInjectorDescriptor descriptor) { if (useStringKeys) { return AnnotationSpec.builder(AndroidInjectionKey.class) .addMember("value", "$S", descriptor.injectedType().toString()) .build(); } return AnnotationSpec.builder(ClassKey.class) .addMember("value", "$T.class", descriptor.injectedType()) .build(); }
AnnotationSpec mapKeyAnnotation() { return AnnotationSpec.builder(mapKeyType()) .addMember("value", "$T.class", injectedType()) .build(); }
+ LOWER_CAMEL.to(UPPER_CAMEL, descriptor.method().getSimpleName().toString())); String baseName = descriptor.injectedType().simpleName(); ClassName subcomponentName = moduleName.nestedClass(baseName + "Subcomponent"); ClassName subcomponentBuilderName = subcomponentName.nestedClass("Builder");
+ LOWER_CAMEL.to(UPPER_CAMEL, descriptor.methodName())); String baseName = descriptor.injectedType().simpleName(); ClassName subcomponentName = moduleName.nestedClass(baseName + "Subcomponent"); ClassName subcomponentBuilderName = subcomponentName.nestedClass("Builder");
@Override public boolean equals(Object o) { if (o == this) { return true; } if (o instanceof AndroidInjectorDescriptor) { AndroidInjectorDescriptor that = (AndroidInjectorDescriptor) o; return (this.injectedType.equals(that.injectedType())) && (this.scopes.equals(that.scopes())) && (this.modules.equals(that.modules())) && (this.enclosingModule.equals(that.enclosingModule())) && (this.method.equals(that.method())); } return false; }
private TypeSpec subcomponent( AndroidInjectorDescriptor descriptor, ClassName subcomponentName, ClassName subcomponentBuilderName) { AnnotationSpec.Builder subcomponentAnnotation = AnnotationSpec.builder(Subcomponent.class); for (ClassName module : descriptor.modules()) { subcomponentAnnotation.addMember("modules", CodeBlock.of("$T.class", module)); } return interfaceBuilder(subcomponentName) .addModifiers(PUBLIC) .addAnnotation(subcomponentAnnotation.build()) .addAnnotations(descriptor.scopes()) .addSuperinterface(parameterizedTypeName(AndroidInjector.class, descriptor.injectedType())) .addType(subcomponentBuilder(descriptor, subcomponentBuilderName)) .build(); }
private TypeSpec subcomponent( AndroidInjectorDescriptor descriptor, ClassName subcomponentName, ClassName subcomponentBuilderName) { AnnotationSpec.Builder subcomponentAnnotation = AnnotationSpec.builder(Subcomponent.class); for (ClassName module : descriptor.modules()) { subcomponentAnnotation.addMember("modules", CodeBlock.of("$T.class", module)); } return interfaceBuilder(subcomponentName) .addModifiers(PUBLIC) .addAnnotation(subcomponentAnnotation.build()) .addAnnotations(descriptor.scopes()) .addSuperinterface(parameterizedTypeName(AndroidInjector.class, descriptor.injectedType())) .addType(subcomponentBuilder(descriptor, subcomponentBuilderName)) .build(); }