Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1583)

Unified Diff: third_party/jmake/src/org/pantsbuild/jmake/PublicExceptions.java

Issue 1373723003: Fix javac --incremental by using jmake for dependency analysis (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@aidl
Patch Set: fix license check Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/jmake/src/org/pantsbuild/jmake/PublicExceptions.java
diff --git a/third_party/jmake/src/org/pantsbuild/jmake/PublicExceptions.java b/third_party/jmake/src/org/pantsbuild/jmake/PublicExceptions.java
new file mode 100644
index 0000000000000000000000000000000000000000..40097454d0c5cf952cd2485a40f6457535552308
--- /dev/null
+++ b/third_party/jmake/src/org/pantsbuild/jmake/PublicExceptions.java
@@ -0,0 +1,169 @@
+/* Copyright (c) 2002-2008 Sun Microsystems, Inc. All rights reserved
+ *
+ * This program is distributed under the terms of
+ * the GNU General Public License Version 2. See the LICENSE file
+ * at the top of the source tree.
+ */
+package org.pantsbuild.jmake;
+
+/**
+ * This class is a wrapper for a number of nested classes. They define exceptions that may be thrown
+ * by the <b>jmake</b> code. These exceptions are caught in the <code>Main.mainExternal</code> method,
+ * or they may be caught and handled by an application invoking <b>jmake</b> programmatically
+ * through <code>Main.mainProgrammatic</code> method.
+ *
+ * @see Main#mainExternal(String[])
+ * @see Main#mainProgrammatic(String[])
+ *
+ * @author Misha Dmitriev
+ * 17 January 2003
+ */
+public class PublicExceptions {
+
+ /**
+ * This exception is thrown whenever there is any problem initializing or calling the compiler, or
+ * when the compiler itself reports compilation errors. Depending on the nature of the problem, an
+ * instance of this class is initialized with, and then returns, an original exception signalling
+ * the problem, or the compiler application exit code.
+ */
+ public static class CompilerInteractionException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+ private Exception originalException;
+ private int compilerExitCode;
+
+ /**
+ * Initialize an instance of this exception with an error message and either an original
+ * exception or a compiler exit code.
+ */
+ CompilerInteractionException(String msg, Exception originalException, int compilerExitCode) {
+ super(msg);
+ this.originalException = originalException;
+ this.compilerExitCode = compilerExitCode;
+ }
+
+ /**
+ * Get the original exception that caused this exception. <code>null</code> is returned if there
+ * were no original exception. In that case, there was a compilation error and the compiler has
+ * returned with the exit code that can be obtained using <code>getCompilerExitCode</code> method.
+ *
+ * @see #getCompilerExitCode()
+ */
+ public Exception getOriginalException() {
+ return originalException;
+ }
+
+ /**
+ * Get the compiler exit code. If <code>0</code> is returned, this indicates that an exception was
+ * thrown during compiler initialization, or inside the compiler itself. Use <code>getOriginalExcepion</code>
+ * method to obtain that exception.
+ *
+ * @see #getOriginalException
+ */
+ public int getCompilerExitCode() {
+ return compilerExitCode;
+ }
+ }
+
+ /** Exception signalling a problem with reading project database file. */
+ public static class PDBCorruptedException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ PDBCorruptedException(String msg) {
+ super(msg);
+ }
+ }
+
+ /** Exception signalling a problem when parsing a class file */
+ public static class ClassFileParseException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ ClassFileParseException(String msg) {
+ super(msg);
+ }
+ }
+
+ /** Exception signalling that <b>jmake</b> was not requested to do any real work. */
+ public static class NoActionRequestedException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+ }
+
+ /** Exception signalling that an invalid command line option has been passed to jmake. */
+ public static class InvalidCmdOptionException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ InvalidCmdOptionException(String msg) {
+ super(msg);
+ }
+ }
+
+ /**
+ * Exception signalling a problem (typically an I/O exception) when parsing a command line file
+ * passed to <b>jmake</b>.
+ */
+ public static class CommandFileReadException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ CommandFileReadException(String msg) {
+ super(msg);
+ }
+ }
+
+ /**
+ * Exception signalling that for some class the deduced name (that is, name based on the source file name and
+ * directory) and the real name (the one read from the class file) are different.
+ */
+ public static class ClassNameMismatchException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ ClassNameMismatchException(String msg) {
+ super(msg);
+ }
+ }
+
+ /** Exception thrown if any specified source file has an invalid extension (not <code>.java</code> or <code>.jar</code>). */
+ public static class InvalidSourceFileExtensionException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ InvalidSourceFileExtensionException(String msg) {
+ super(msg);
+ }
+ }
+
+ /** Exception thrown if a dependence of a class in a <code>JAR</code> file on a class with a <code>.java</code> source is detected. */
+ public static class JarDependsOnSourceException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ JarDependsOnSourceException(String msg) {
+ super(msg);
+ }
+ }
+
+ /** Exception thrown if more than one entry for the same class is detected in the project */
+ public static class DoubleEntryException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ DoubleEntryException(String msg) {
+ super(msg);
+ }
+ }
+
+ /** Exception thrown if an internal problem that should never happen is detected. */
+ public static class InternalException extends Exception {
+
+ private static final long serialVersionUID = 1L;
+
+ InternalException(String msg) {
+ super(msg);
+ }
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698