aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/packages/NoSuchPackageException.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/packages/NoSuchPackageException.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/packages/NoSuchPackageException.java30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/packages/NoSuchPackageException.java b/src/main/java/com/google/devtools/build/lib/packages/NoSuchPackageException.java
index aff72fb65a..1ea372e8dc 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/NoSuchPackageException.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/NoSuchPackageException.java
@@ -19,33 +19,33 @@ import com.google.devtools.build.lib.cmdline.PackageIdentifier;
/**
* Exception indicating an attempt to access a package which is not found, does
* not exist, or can't be parsed into a package.
+ *
+ * <p>Prefer using more-specific subclasses, when appropriate.
*/
-public abstract class NoSuchPackageException extends NoSuchThingException {
+public class NoSuchPackageException extends NoSuchThingException {
private final PackageIdentifier packageId;
public NoSuchPackageException(PackageIdentifier packageId, String message) {
- this(packageId, "no such package", message);
- }
-
- public NoSuchPackageException(PackageIdentifier packageId, String message,
- Exception cause) {
- this(packageId, "no such package", message, cause);
- }
-
- protected NoSuchPackageException(
- PackageIdentifier packageId, String messagePrefix, String message) {
- super(messagePrefix + " '" + packageId + "': " + message);
+ super(message);
this.packageId = packageId;
}
- protected NoSuchPackageException(PackageIdentifier packageId, String messagePrefix,
- String message, Exception cause) {
- super(messagePrefix + " '" + packageId + "': " + message, cause);
+ public NoSuchPackageException(PackageIdentifier packageId, String message, Exception cause) {
+ super(message, cause);
this.packageId = packageId;
}
public PackageIdentifier getPackageId() {
return packageId;
}
+
+ public String getRawMessage() {
+ return super.getMessage();
+ }
+
+ @Override
+ public String getMessage() {
+ return String.format("%s '%s': %s", "no such package", packageId, getRawMessage());
+ }
}