in buildSrc/src/main/java/com/uber/okbuck/core/model/base/TargetCache.java [26:71]
public synchronized Map<String, Target> getTargets() {
if (targets == null) {
ProjectType type = ProjectUtil.getType(project);
switch (type) {
case ANDROID_APP:
targets =
project
.getExtensions()
.getByType(AppExtension.class)
.getApplicationVariants()
.stream()
.collect(
ImmutableMap.toImmutableMap(
BaseVariant::getName, v -> new AndroidAppTarget(project, v.getName())));
break;
case ANDROID_LIB:
targets =
project
.getExtensions()
.getByType(LibraryExtension.class)
.getLibraryVariants()
.stream()
.collect(
ImmutableMap.toImmutableMap(
BaseVariant::getName, v -> new AndroidLibTarget(project, v.getName())));
break;
case KOTLIN_LIB:
targets =
ImmutableMap.of(
JvmTarget.MAIN,
new JvmTarget(
project, JvmTarget.MAIN, "kapt", "kaptTest", "kaptIntegrationTest"));
break;
case GROOVY_LIB:
case SCALA_LIB:
case JAVA_LIB:
targets = ImmutableMap.of(JvmTarget.MAIN, new JvmTarget(project, JvmTarget.MAIN));
break;
default:
targets = ImmutableMap.of();
break;
}
}
return targets;
}