pgm: Handle exceptions in Status command
This avoids we show a stacktrace on the console by default when this type of exception is thrown during the run method is executed. Change-Id: I662a343fbb46c35090bd6f840e5a35a88036a65a Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
This commit is contained in:
parent
b33124c0ee
commit
c6bd13922f
|
@ -54,6 +54,8 @@
|
||||||
|
|
||||||
import org.eclipse.jgit.api.Git;
|
import org.eclipse.jgit.api.Git;
|
||||||
import org.eclipse.jgit.api.StatusCommand;
|
import org.eclipse.jgit.api.StatusCommand;
|
||||||
|
import org.eclipse.jgit.api.errors.GitAPIException;
|
||||||
|
import org.eclipse.jgit.errors.NoWorkTreeException;
|
||||||
import org.eclipse.jgit.lib.Constants;
|
import org.eclipse.jgit.lib.Constants;
|
||||||
import org.eclipse.jgit.lib.IndexDiff.StageState;
|
import org.eclipse.jgit.lib.IndexDiff.StageState;
|
||||||
import org.eclipse.jgit.lib.Ref;
|
import org.eclipse.jgit.lib.Ref;
|
||||||
|
@ -88,7 +90,7 @@ class Status extends TextBuiltin {
|
||||||
|
|
||||||
/** {@inheritDoc} */
|
/** {@inheritDoc} */
|
||||||
@Override
|
@Override
|
||||||
protected void run() throws Exception {
|
protected void run() {
|
||||||
try (Git git = new Git(db)) {
|
try (Git git = new Git(db)) {
|
||||||
StatusCommand statusCommand = git.status();
|
StatusCommand statusCommand = git.status();
|
||||||
if (filterPaths != null && filterPaths.size() > 0)
|
if (filterPaths != null && filterPaths.size() > 0)
|
||||||
|
@ -96,6 +98,8 @@ protected void run() throws Exception {
|
||||||
statusCommand.addPath(path);
|
statusCommand.addPath(path);
|
||||||
org.eclipse.jgit.api.Status status = statusCommand.call();
|
org.eclipse.jgit.api.Status status = statusCommand.call();
|
||||||
printStatus(status);
|
printStatus(status);
|
||||||
|
} catch (GitAPIException | NoWorkTreeException | IOException e) {
|
||||||
|
throw die(e.getMessage(), e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue