aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/pkgcache
diff options
context:
space:
mode:
authorGravatar ulfjack <ulfjack@google.com>2018-06-06 02:11:36 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-06-06 02:12:51 -0700
commitfbd9e6d46f0578125e75b923c3b63ae8998e64a5 (patch)
treec5c13b9f2b3d73f6809be2f6a59c4907b1293493 /src/main/java/com/google/devtools/build/lib/pkgcache
parent0eddd293a269469013af673e3b9c4facdd478e4e (diff)
Remove CachingPackageLocator interface from the PackageProvider hierarchy
This simplifies the code quite a bit. PiperOrigin-RevId: 199427943
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/pkgcache')
-rw-r--r--src/main/java/com/google/devtools/build/lib/pkgcache/AbstractRecursivePackageProvider.java21
-rw-r--r--src/main/java/com/google/devtools/build/lib/pkgcache/PackageManager.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/pkgcache/PackageProvider.java3
3 files changed, 4 insertions, 23 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/pkgcache/AbstractRecursivePackageProvider.java b/src/main/java/com/google/devtools/build/lib/pkgcache/AbstractRecursivePackageProvider.java
index 4252f1d44c..80cad9fd63 100644
--- a/src/main/java/com/google/devtools/build/lib/pkgcache/AbstractRecursivePackageProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/pkgcache/AbstractRecursivePackageProvider.java
@@ -14,36 +14,17 @@
package com.google.devtools.build.lib.pkgcache;
import com.google.devtools.build.lib.cmdline.Label;
-import com.google.devtools.build.lib.cmdline.PackageIdentifier;
import com.google.devtools.build.lib.events.ExtendedEventHandler;
import com.google.devtools.build.lib.packages.NoSuchPackageException;
import com.google.devtools.build.lib.packages.NoSuchTargetException;
import com.google.devtools.build.lib.packages.Target;
-import com.google.devtools.build.lib.vfs.Path;
/** Partial implementation of RecursivePackageProvider to provide some common methods. */
public abstract class AbstractRecursivePackageProvider implements RecursivePackageProvider {
- private final PathPackageLocator pkgPath;
-
- protected AbstractRecursivePackageProvider(PathPackageLocator pkgPath) {
- this.pkgPath = pkgPath;
- }
-
- @Override
- public Path getBuildFileForPackage(PackageIdentifier packageName) {
- try {
- return pkgPath.getPackageBuildFile(packageName);
- } catch (NoSuchPackageException e) {
- return null;
- }
+ protected AbstractRecursivePackageProvider() {
}
- public PathPackageLocator getPkgPath() {
- return pkgPath;
- }
-
-
@Override
public Target getTarget(ExtendedEventHandler eventHandler, Label label)
throws NoSuchPackageException, NoSuchTargetException, InterruptedException {
diff --git a/src/main/java/com/google/devtools/build/lib/pkgcache/PackageManager.java b/src/main/java/com/google/devtools/build/lib/pkgcache/PackageManager.java
index 08761f32be..0bbfae7ced 100644
--- a/src/main/java/com/google/devtools/build/lib/pkgcache/PackageManager.java
+++ b/src/main/java/com/google/devtools/build/lib/pkgcache/PackageManager.java
@@ -14,13 +14,14 @@
package com.google.devtools.build.lib.pkgcache;
import com.google.devtools.build.lib.concurrent.ThreadSafety;
+import com.google.devtools.build.lib.packages.CachingPackageLocator;
import java.io.PrintStream;
/**
* A PackageManager keeps state about loaded packages around for quick lookup, and provides related
* functionality: Recursive package finding, loaded package checking, etc.
*/
-public interface PackageManager extends PackageProvider {
+public interface PackageManager extends PackageProvider, CachingPackageLocator {
PackageManagerStatistics getAndClearStatistics();
/**
diff --git a/src/main/java/com/google/devtools/build/lib/pkgcache/PackageProvider.java b/src/main/java/com/google/devtools/build/lib/pkgcache/PackageProvider.java
index f42ea3dd9e..e04a7c6f5f 100644
--- a/src/main/java/com/google/devtools/build/lib/pkgcache/PackageProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/pkgcache/PackageProvider.java
@@ -16,7 +16,6 @@ package com.google.devtools.build.lib.pkgcache;
import com.google.devtools.build.lib.cmdline.PackageIdentifier;
import com.google.devtools.build.lib.events.ExtendedEventHandler;
-import com.google.devtools.build.lib.packages.CachingPackageLocator;
import com.google.devtools.build.lib.packages.NoSuchPackageException;
import com.google.devtools.build.lib.packages.Package;
@@ -25,7 +24,7 @@ import com.google.devtools.build.lib.packages.Package;
*
* <p><b>Concurrency</b>: Implementations should be thread safe for {@link #getPackage}.
*/
-public interface PackageProvider extends TargetProvider, CachingPackageLocator {
+public interface PackageProvider extends TargetProvider {
/**
* Returns the {@link Package} named "packageName". If there is no such package (e.g. {@code