Skip to content

Commit

Permalink
Only consume pure java dependencies in annotation processor deps
Browse files Browse the repository at this point in the history
  • Loading branch information
Gautam Korlam committed Jan 29, 2017
1 parent b02c84e commit 6456491
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ final class AndroidLibraryRuleComposer extends AndroidBuckRuleComposer {
libraryDeps.addAll(targets(target.main.targetDeps))

List<String> libraryAptDeps = []
libraryAptDeps.addAll(external(target.apt.externalDeps))
libraryAptDeps.addAll(targets(target.apt.targetDeps))
libraryAptDeps.addAll(externalApt(target.apt.externalDeps))
libraryAptDeps.addAll(targetsApt(target.apt.targetDeps))

Set<String> providedDeps = []
providedDeps.addAll(external(target.provided.externalDeps))
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package com.uber.okbuck.composer.base;

import com.uber.okbuck.core.model.android.AndroidTarget;
import com.uber.okbuck.core.model.base.Target;
import com.uber.okbuck.core.model.java.JavaLibTarget;

import org.apache.commons.io.FilenameUtils;

Expand All @@ -18,6 +20,12 @@ public static Set<String> external(final Set<String> deps) {
.collect(Collectors.toSet());
}

public static Set<String> externalApt(final Set<String> deps) {
return external(deps).parallelStream()
.filter(dep -> dep.endsWith(".jar"))
.collect(Collectors.toSet());
}

public static String external(final String dep) {
String ext = dep;
int ind = FilenameUtils.indexOfLastSeparator(dep);
Expand All @@ -33,6 +41,13 @@ public static Set<String> targets(final Set<Target> deps) {
.collect(Collectors.toSet());
}

public static Set<String> targetsApt(final Set<Target> deps) {
return deps.parallelStream()
.filter(target -> target.getClass().equals(JavaLibTarget.class))
.map(BuckRuleComposer::targets)
.collect(Collectors.toSet());
}

public static String targets(final Target dep) {
return String.format("//%s:src_%s", dep.getPath(), dep.getName());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ final class JavaLibraryRuleComposer extends JvmBuckRuleComposer {
deps.addAll(targets(target.main.targetDeps))

Set<String> aptDeps = [] as Set
aptDeps.addAll(external(target.apt.externalDeps))
aptDeps.addAll(targets(target.apt.targetDeps))
aptDeps.addAll(externalApt(target.apt.externalDeps))
aptDeps.addAll(targetsApt(target.apt.targetDeps))

Set<String> providedDeps = []
providedDeps.addAll(external(target.provided.externalDeps))
Expand Down

0 comments on commit 6456491

Please sign in to comment.