Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobin Rosenberg2012-05-30 00:24:18 +0000
committerMatthias Sohn2012-05-30 00:24:18 +0000
commitbda268636a1de7077bd28484a201988883bae1c9 (patch)
tree7342fbd4f90001ec3de5b98b31c177d0370707f6
parent64417af7a7e0d74ee423d6642d40a5116f584fe1 (diff)
downloadegit-bda268636a1de7077bd28484a201988883bae1c9.tar.gz
egit-bda268636a1de7077bd28484a201988883bae1c9.tar.xz
egit-bda268636a1de7077bd28484a201988883bae1c9.zip
Git API does not declare GitAPIException call() and related changes
Anyone that calls a Git API should catch GitAPIException and not just the currently known exceptions. During the process of cleaning this up a number of cases, but not all cases, where only checked exceptions are thrown, are changed to catch all Exceptions except Error. This changes adapt EGit to changes made in JGit for this reason. Bug: 366914 JGit-Change-Id: I50380f13fc82c22d0036f47c7859cc3a77e767c5 Change-Id: I4de4902003a9f306912475e8b15b1e72d43e7475 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
-rw-r--r--org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/TestRepository.java35
-rw-r--r--org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/CloneOperationTest.java11
-rw-r--r--org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/DiscardChangesOperationTest.java3
-rw-r--r--org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/ListRemoteOperationTest.java3
-rw-r--r--org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/PushOperationTest.java3
-rw-r--r--org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/TagOperationTest.java3
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/AddToIndexOperation.java4
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/CommitOperation.java35
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteBranchOperation.java3
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteTagOperation.java4
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/FetchOperation.java3
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/PushOperation.java7
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/RemoveFromIndexOperation.java3
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/RenameBranchOperation.java13
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/ResetOperation.java5
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleAddOperation.java4
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleSyncOperation.java4
-rw-r--r--org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleUpdateOperation.java4
-rw-r--r--org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/wizards/share/SharingWizardTest.java12
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/blame/BlameOperation.java8
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java2
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/CommitDialog.java3
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/operations/GitScopeOperation.java7
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/tree/command/AddToIndexCommand.java4
-rw-r--r--org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/staging/StagingView.java4
25 files changed, 67 insertions, 120 deletions
diff --git a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/TestRepository.java b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/TestRepository.java
index b40bd67f38..130c58d22c 100644
--- a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/TestRepository.java
+++ b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/TestRepository.java
@@ -27,6 +27,7 @@ import org.eclipse.egit.core.op.DisconnectProviderOperation;
import org.eclipse.jgit.api.CommitCommand;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.errors.ConcurrentRefUpdateException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.api.errors.JGitInternalException;
import org.eclipse.jgit.api.errors.NoFilepatternException;
import org.eclipse.jgit.api.errors.NoHeadException;
@@ -110,15 +111,12 @@ public class TestRepository {
* commit message
* @return commit object
* @throws IOException
- * @throws NoHeadException
- * @throws NoMessageException
- * @throws ConcurrentRefUpdateException
* @throws JGitInternalException
- * @throws WrongRepositoryStateException
+ * @throws GitAPIException
+ * @throws NoFilepatternException
*/
public RevCommit createInitialCommit(String message) throws IOException,
- NoHeadException, NoMessageException, ConcurrentRefUpdateException,
- JGitInternalException, WrongRepositoryStateException {
+ JGitInternalException, NoFilepatternException, GitAPIException {
String repoPath = repository.getWorkTree().getAbsolutePath();
File file = new File(repoPath, "dummy");
if (!file.exists())
@@ -215,12 +213,13 @@ public class TestRepository {
* @throws UnmergedPathException
* @throws ConcurrentRefUpdateException
* @throws JGitInternalException
+ * @throws GitAPIException
* @throws WrongRepositoryStateException
*/
public RevCommit commit(String message) throws NoHeadException,
NoMessageException, UnmergedPathException,
ConcurrentRefUpdateException, JGitInternalException,
- WrongRepositoryStateException {
+ WrongRepositoryStateException, GitAPIException {
Git git = new Git(repository);
CommitCommand commitCommand = git.commit();
commitCommand.setAuthor("J. Git", "j.git@egit.org");
@@ -234,15 +233,13 @@ public class TestRepository {
*
* @param file
* @throws IOException
+ * @throws GitAPIException
+ * @throws NoFilepatternException
*/
- public void track(File file) throws IOException {
+ public void track(File file) throws IOException, NoFilepatternException, GitAPIException {
String repoPath = getRepoRelativePath(new Path(file.getPath())
.toString());
- try {
- new Git(repository).add().addFilepattern(repoPath).call();
- } catch (NoFilepatternException e) {
- throw new IOException(e.getMessage());
- }
+ new Git(repository).add().addFilepattern(repoPath).call();
}
/**
* Removes file from version control
@@ -255,7 +252,7 @@ public class TestRepository {
.toString());
try {
new Git(repository).rm().addFilepattern(repoPath).call();
- } catch (NoFilepatternException e) {
+ } catch (GitAPIException e) {
throw new IOException(e.getMessage());
}
}
@@ -329,14 +326,12 @@ public class TestRepository {
* @param file
* @throws CoreException
* @throws IOException
+ * @throws GitAPIException
+ * @throws NoFilepatternException
*/
- public void addToIndex(IFile file) throws CoreException, IOException {
+ public void addToIndex(IFile file) throws CoreException, IOException, NoFilepatternException, GitAPIException {
String repoPath = getRepoRelativePath(file.getLocation().toOSString());
- try {
- new Git(repository).add().addFilepattern(repoPath).call();
- } catch (NoFilepatternException e) {
- throw new IOException(e.getMessage());
- }
+ new Git(repository).add().addFilepattern(repoPath).call();
}
/**
diff --git a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/CloneOperationTest.java b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/CloneOperationTest.java
index 5e781f2285..ff792a5d52 100644
--- a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/CloneOperationTest.java
+++ b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/CloneOperationTest.java
@@ -23,12 +23,7 @@ import org.eclipse.egit.core.op.ConfigurePushAfterCloneTask;
import org.eclipse.egit.core.test.DualRepositoryTestCase;
import org.eclipse.egit.core.test.TestRepository;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.ConcurrentRefUpdateException;
-import org.eclipse.jgit.api.errors.NoFilepatternException;
-import org.eclipse.jgit.api.errors.NoHeadException;
-import org.eclipse.jgit.api.errors.NoMessageException;
-import org.eclipse.jgit.api.errors.WrongRepositoryStateException;
-import org.eclipse.jgit.errors.UnmergedPathException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.lib.ConfigConstants;
import org.eclipse.jgit.lib.Constants;
import org.eclipse.jgit.lib.Repository;
@@ -155,9 +150,7 @@ public class CloneOperationTest extends DualRepositoryTestCase {
assertEquals(1, clonedGit.notesList().setNotesRef("refs/notes/review").call().size());
}
- protected void createNoteInOrigin() throws NoFilepatternException, NoHeadException,
- NoMessageException, UnmergedPathException,
- ConcurrentRefUpdateException, WrongRepositoryStateException {
+ protected void createNoteInOrigin() throws GitAPIException {
Git git = new Git(repository1.getRepository());
git.add().addFilepattern("file.txt").call();
RevCommit commit = git.commit().setMessage("Initial commit").call();
diff --git a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/DiscardChangesOperationTest.java b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/DiscardChangesOperationTest.java
index 5ab6900916..5c3febe05a 100644
--- a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/DiscardChangesOperationTest.java
+++ b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/DiscardChangesOperationTest.java
@@ -12,7 +12,6 @@ import static org.junit.Assert.assertEquals;
import java.io.ByteArrayInputStream;
import java.io.File;
-import java.io.IOException;
import org.eclipse.core.filesystem.EFS;
import org.eclipse.core.resources.IFile;
@@ -62,7 +61,7 @@ public class DiscardChangesOperationTest extends DualRepositoryTestCase {
repository1
.track(EFS.getStore(resource.getLocationURI())
.toLocalFile(0, null));
- } catch (IOException e) {
+ } catch (Exception e) {
throw new CoreException(Activator.error(e.getMessage(),
e));
}
diff --git a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/ListRemoteOperationTest.java b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/ListRemoteOperationTest.java
index a3b527dfdd..1a5d472caa 100644
--- a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/ListRemoteOperationTest.java
+++ b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/ListRemoteOperationTest.java
@@ -13,7 +13,6 @@ import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.fail;
import java.io.File;
-import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import org.eclipse.core.filesystem.EFS;
@@ -74,7 +73,7 @@ public class ListRemoteOperationTest extends DualRepositoryTestCase {
repository1
.track(EFS.getStore(resource.getLocationURI())
.toLocalFile(0, null));
- } catch (IOException e) {
+ } catch (Exception e) {
throw new CoreException(Activator.error(e.getMessage(),
e));
}
diff --git a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/PushOperationTest.java b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/PushOperationTest.java
index 6c3373e666..23dc488a78 100644
--- a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/PushOperationTest.java
+++ b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/PushOperationTest.java
@@ -15,7 +15,6 @@ import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import java.io.File;
-import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -92,7 +91,7 @@ public class PushOperationTest extends DualRepositoryTestCase {
repository1
.track(EFS.getStore(resource.getLocationURI())
.toLocalFile(0, null));
- } catch (IOException e) {
+ } catch (Exception e) {
throw new CoreException(Activator.error(e.getMessage(),
e));
}
diff --git a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/TagOperationTest.java b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/TagOperationTest.java
index a9e05e7c81..8118a3b73c 100644
--- a/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/TagOperationTest.java
+++ b/org.eclipse.egit.core.test/src/org/eclipse/egit/core/test/op/TagOperationTest.java
@@ -13,7 +13,6 @@ import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import java.io.File;
-import java.io.IOException;
import org.eclipse.core.filesystem.EFS;
import org.eclipse.core.resources.IFile;
@@ -66,7 +65,7 @@ public class TagOperationTest extends DualRepositoryTestCase {
repository1
.track(EFS.getStore(resource.getLocationURI())
.toLocalFile(0, null));
- } catch (IOException e) {
+ } catch (Exception e) {
throw new CoreException(Activator.error(e.getMessage(),
e));
}
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/AddToIndexOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/AddToIndexOperation.java
index 028abc96e1..054532a8f6 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/AddToIndexOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/AddToIndexOperation.java
@@ -27,7 +27,7 @@ import org.eclipse.egit.core.internal.job.RuleUtil;
import org.eclipse.egit.core.project.RepositoryMapping;
import org.eclipse.jgit.api.AddCommand;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.NoFilepatternException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.lib.Repository;
/**
@@ -79,7 +79,7 @@ public class AddToIndexOperation implements IEGitOperation {
}
} catch (RuntimeException e) {
throw new CoreException(Activator.error(CoreText.AddToIndexOperation_failed, e));
- } catch (NoFilepatternException e) {
+ } catch (GitAPIException e) {
throw new CoreException(Activator.error(CoreText.AddToIndexOperation_failed, e));
} finally {
for (final RepositoryMapping rm : addCommands.keySet())
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/CommitOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/CommitOperation.java
index 8b0435f9aa..e662f2c96a 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/CommitOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/CommitOperation.java
@@ -31,13 +31,8 @@ import org.eclipse.egit.core.project.RepositoryMapping;
import org.eclipse.jgit.api.AddCommand;
import org.eclipse.jgit.api.CommitCommand;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.ConcurrentRefUpdateException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.api.errors.JGitInternalException;
-import org.eclipse.jgit.api.errors.NoFilepatternException;
-import org.eclipse.jgit.api.errors.NoHeadException;
-import org.eclipse.jgit.api.errors.NoMessageException;
-import org.eclipse.jgit.api.errors.WrongRepositoryStateException;
-import org.eclipse.jgit.errors.UnmergedPathException;
import org.eclipse.jgit.lib.PersonIdent;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.revwalk.RevCommit;
@@ -217,13 +212,12 @@ public class CommitOperation implements IEGitOperation {
addCommand.addFilepattern(path);
fileAdded = true;
}
- if (fileAdded) {
+ if (fileAdded)
try {
addCommand.call();
- } catch (NoFilepatternException e) {
+ } catch (Exception e) {
throw new CoreException(Activator.error(e.getMessage(), e));
}
- }
}
public ISchedulingRule getSchedulingRule() {
@@ -253,20 +247,9 @@ public class CommitOperation implements IEGitOperation {
for(String path:commitFileList)
commitCommand.setOnly(path);
commit = commitCommand.call();
- } catch (NoHeadException e) {
- throw new TeamException(e.getLocalizedMessage(), e);
- } catch (NoMessageException e) {
- throw new TeamException(e.getLocalizedMessage(), e);
- } catch (UnmergedPathException e) {
- throw new TeamException(e.getLocalizedMessage(), e);
- } catch (ConcurrentRefUpdateException e) {
- throw new TeamException(
- CoreText.MergeOperation_InternalError, e);
- } catch (JGitInternalException e) {
+ } catch (Exception e) {
throw new TeamException(
CoreText.MergeOperation_InternalError, e);
- } catch (WrongRepositoryStateException e) {
- throw new TeamException(e.getLocalizedMessage(), e);
}
}
@@ -316,17 +299,9 @@ public class CommitOperation implements IEGitOperation {
new PersonIdent(committerIdent, commitDate,
timeZone)).setMessage(message)
.setInsertChangeId(createChangeId).call();
- } catch (NoHeadException e) {
- throw new TeamException(e.getLocalizedMessage(), e);
- } catch (NoMessageException e) {
- throw new TeamException(e.getLocalizedMessage(), e);
- } catch (UnmergedPathException e) {
- throw new TeamException(e.getLocalizedMessage(), e);
- } catch (ConcurrentRefUpdateException e) {
- throw new TeamException(CoreText.MergeOperation_InternalError, e);
} catch (JGitInternalException e) {
throw new TeamException(CoreText.MergeOperation_InternalError, e);
- } catch (WrongRepositoryStateException e) {
+ } catch (GitAPIException e) {
throw new TeamException(e.getLocalizedMessage(), e);
}
}
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteBranchOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteBranchOperation.java
index 65957eb9ec..1b06d24c50 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteBranchOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteBranchOperation.java
@@ -24,6 +24,7 @@ import org.eclipse.egit.core.Activator;
import org.eclipse.egit.core.CoreText;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.errors.CannotDeleteCurrentBranchException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.api.errors.JGitInternalException;
import org.eclipse.jgit.api.errors.NotMergedException;
import org.eclipse.jgit.lib.Ref;
@@ -129,6 +130,8 @@ public class DeleteBranchOperation implements IEGitOperation {
break;
} catch (JGitInternalException e) {
throw new CoreException(Activator.error(e.getMessage(), e));
+ } catch (GitAPIException e) {
+ throw new CoreException(Activator.error(e.getMessage(), e));
}
actMonitor.worked(1);
}
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteTagOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteTagOperation.java
index afbc5291f1..b9c706dd6e 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteTagOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/DeleteTagOperation.java
@@ -16,7 +16,7 @@ import org.eclipse.core.runtime.jobs.ISchedulingRule;
import org.eclipse.egit.core.Activator;
import org.eclipse.egit.core.CoreText;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.JGitInternalException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.lib.Repository;
/**
@@ -42,7 +42,7 @@ public class DeleteTagOperation implements IEGitOperation {
public void execute(IProgressMonitor monitor) throws CoreException {
try {
Git.wrap(repository).tagDelete().setTags(tag).call();
- } catch (JGitInternalException e) {
+ } catch (GitAPIException e) {
throw new CoreException(Activator.error(
CoreText.DeleteTagOperation_exceptionMessage, e));
}
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/FetchOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/FetchOperation.java
index 56281d308a..fa6950ed94 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/FetchOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/FetchOperation.java
@@ -17,7 +17,6 @@ import org.eclipse.egit.core.CoreText;
import org.eclipse.egit.core.EclipseGitProgressTransformer;
import org.eclipse.jgit.api.FetchCommand;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.InvalidRemoteException;
import org.eclipse.jgit.api.errors.JGitInternalException;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.transport.CredentialsProvider;
@@ -129,7 +128,7 @@ public class FetchOperation {
} catch (JGitInternalException e) {
throw new InvocationTargetException(e.getCause() != null ? e
.getCause() : e);
- } catch (InvalidRemoteException e) {
+ } catch (Exception e) {
throw new InvocationTargetException(e);
}
}
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/PushOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/PushOperation.java
index 35839fc286..f33ae1d04d 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/PushOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/PushOperation.java
@@ -21,7 +21,6 @@ import org.eclipse.egit.core.Activator;
import org.eclipse.egit.core.CoreText;
import org.eclipse.egit.core.EclipseGitProgressTransformer;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.InvalidRemoteException;
import org.eclipse.jgit.api.errors.JGitInternalException;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.transport.CredentialsProvider;
@@ -29,8 +28,8 @@ import org.eclipse.jgit.transport.PushResult;
import org.eclipse.jgit.transport.RefSpec;
import org.eclipse.jgit.transport.RemoteConfig;
import org.eclipse.jgit.transport.RemoteRefUpdate;
-import org.eclipse.jgit.transport.URIish;
import org.eclipse.jgit.transport.RemoteRefUpdate.Status;
+import org.eclipse.jgit.transport.URIish;
import org.eclipse.osgi.util.NLS;
/**
@@ -205,7 +204,7 @@ public class PushOperation {
CoreText.PushOperation_InternalExceptionOccurredMessage,
errorMessage);
handleException(uri, e, userMessage);
- } catch (InvalidRemoteException e) {
+ } catch (Exception e) {
handleException(uri, e, e.getMessage());
}
@@ -236,7 +235,7 @@ public class PushOperation {
errorMessage);
URIish uri = getPushURIForErrorHandling();
handleException(uri, e, userMessage);
- } catch (InvalidRemoteException e) {
+ } catch (Exception e) {
URIish uri = getPushURIForErrorHandling();
handleException(uri, e, e.getMessage());
}
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/RemoveFromIndexOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/RemoveFromIndexOperation.java
index 8947f96344..e048b82bb1 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/RemoveFromIndexOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/RemoveFromIndexOperation.java
@@ -12,7 +12,6 @@ package org.eclipse.egit.core.op;
import static org.eclipse.egit.core.project.RepositoryMapping.findRepositoryMapping;
import static org.eclipse.jgit.lib.Constants.HEAD;
-import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
@@ -74,7 +73,7 @@ public class RemoveFromIndexOperation implements IEGitOperation {
try {
resetCommand.call();
monitor.worked(1);
- } catch (IOException e) {
+ } catch (Exception e) {
Activator.logError(e.getMessage(), e);
} finally {
monitor.done();
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/RenameBranchOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/RenameBranchOperation.java
index c0c3ed6f39..f55b43fe07 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/RenameBranchOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/RenameBranchOperation.java
@@ -17,11 +17,8 @@ import org.eclipse.core.runtime.jobs.ISchedulingRule;
import org.eclipse.egit.core.Activator;
import org.eclipse.egit.core.CoreText;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.DetachedHeadException;
-import org.eclipse.jgit.api.errors.InvalidRefNameException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.api.errors.JGitInternalException;
-import org.eclipse.jgit.api.errors.RefAlreadyExistsException;
-import org.eclipse.jgit.api.errors.RefNotFoundException;
import org.eclipse.jgit.lib.Ref;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.osgi.util.NLS;
@@ -68,13 +65,7 @@ public class RenameBranchOperation implements IEGitOperation {
branch.getName()).setNewName(newName).call();
} catch (JGitInternalException e) {
throw new CoreException(Activator.error(e.getMessage(), e));
- } catch (RefNotFoundException e) {
- throw new CoreException(Activator.error(e.getMessage(), e));
- } catch (InvalidRefNameException e) {
- throw new CoreException(Activator.error(e.getMessage(), e));
- } catch (RefAlreadyExistsException e) {
- throw new CoreException(Activator.error(e.getMessage(), e));
- } catch (DetachedHeadException e) {
+ } catch (GitAPIException e) {
throw new CoreException(Activator.error(e.getMessage(), e));
}
actMonitor.worked(1);
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/ResetOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/ResetOperation.java
index bb6b97e9c2..6693f225a5 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/ResetOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/ResetOperation.java
@@ -11,8 +11,6 @@
*******************************************************************************/
package org.eclipse.egit.core.op;
-import java.io.IOException;
-
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IWorkspaceRunnable;
import org.eclipse.core.resources.ResourcesPlugin;
@@ -26,6 +24,7 @@ import org.eclipse.egit.core.internal.util.ProjectUtil;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.ResetCommand;
import org.eclipse.jgit.api.ResetCommand.ResetType;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.osgi.util.NLS;
import org.eclipse.team.core.TeamException;
@@ -93,7 +92,7 @@ public class ResetOperation implements IEGitOperation {
reset.setRef(refName);
try {
reset.call();
- } catch (IOException e) {
+ } catch (GitAPIException e) {
throw new TeamException(e.getLocalizedMessage(), e.getCause());
}
monitor.worked(1);
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleAddOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleAddOperation.java
index 780fcaf033..5d1860db13 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleAddOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleAddOperation.java
@@ -19,7 +19,7 @@ import org.eclipse.core.runtime.jobs.ISchedulingRule;
import org.eclipse.egit.core.EclipseGitProgressTransformer;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.SubmoduleAddCommand;
-import org.eclipse.jgit.api.errors.JGitInternalException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.team.core.TeamException;
@@ -59,7 +59,7 @@ public class SubmoduleAddOperation implements IEGitOperation {
try {
if (add.call() != null)
repo.notifyIndexChanged();
- } catch (JGitInternalException e) {
+ } catch (GitAPIException e) {
throw new TeamException(e.getLocalizedMessage(),
e.getCause());
}
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleSyncOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleSyncOperation.java
index d95755583c..d2108fd4ac 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleSyncOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleSyncOperation.java
@@ -22,7 +22,7 @@ import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.jobs.ISchedulingRule;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.SubmoduleSyncCommand;
-import org.eclipse.jgit.api.errors.JGitInternalException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.team.core.TeamException;
@@ -68,7 +68,7 @@ public class SubmoduleSyncOperation implements IEGitOperation {
for (String path : paths)
sync.addPath(path);
updates = sync.call();
- } catch (JGitInternalException e) {
+ } catch (GitAPIException e) {
throw new TeamException(e.getLocalizedMessage(),
e.getCause());
} finally {
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleUpdateOperation.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleUpdateOperation.java
index 2ce9326272..724ffc0251 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleUpdateOperation.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/op/SubmoduleUpdateOperation.java
@@ -26,7 +26,7 @@ import org.eclipse.egit.core.internal.util.ProjectUtil;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.SubmoduleInitCommand;
import org.eclipse.jgit.api.SubmoduleUpdateCommand;
-import org.eclipse.jgit.api.errors.JGitInternalException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.submodule.SubmoduleWalk;
import org.eclipse.team.core.TeamException;
@@ -97,7 +97,7 @@ public class SubmoduleUpdateOperation implements IEGitOperation {
refreshMonitor.worked(1);
}
refreshMonitor.done();
- } catch (JGitInternalException e) {
+ } catch (GitAPIException e) {
throw new TeamException(e.getLocalizedMessage(),
e.getCause());
} catch (IOException e) {
diff --git a/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/wizards/share/SharingWizardTest.java b/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/wizards/share/SharingWizardTest.java
index 13c1129af7..e2c1d4bcc0 100644
--- a/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/wizards/share/SharingWizardTest.java
+++ b/org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/wizards/share/SharingWizardTest.java
@@ -13,6 +13,7 @@ package org.eclipse.egit.ui.wizards.share;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
import java.io.File;
import java.io.IOException;
@@ -40,12 +41,8 @@ import org.eclipse.egit.ui.common.SharingWizard;
import org.eclipse.egit.ui.test.Eclipse;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.ConcurrentRefUpdateException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.api.errors.JGitInternalException;
-import org.eclipse.jgit.api.errors.NoFilepatternException;
-import org.eclipse.jgit.api.errors.NoHeadException;
-import org.eclipse.jgit.api.errors.NoMessageException;
-import org.eclipse.jgit.api.errors.WrongRepositoryStateException;
import org.eclipse.jgit.junit.MockSystemReader;
import org.eclipse.jgit.lib.Constants;
import org.eclipse.jgit.lib.Repository;
@@ -60,7 +57,6 @@ import org.junit.After;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
-import static org.junit.Assert.*;
import org.junit.runner.RunWith;
@RunWith(SWTBotJunit4ClassRunner.class)
@@ -196,9 +192,7 @@ public class SharingWizardTest extends LocalRepositoryTestCase {
@Test
public void shareProjectWithAlreadyCreatedRepos() throws IOException,
- InterruptedException, NoFilepatternException, NoHeadException,
- NoMessageException, ConcurrentRefUpdateException,
- JGitInternalException, WrongRepositoryStateException {
+ InterruptedException, JGitInternalException, GitAPIException {
FileRepository repo1 = new FileRepository(new File(
createProject(projectName1), "../.git"));
repo1.create();
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/blame/BlameOperation.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/blame/BlameOperation.java
index 58d12bf5fc..598b3ed17c 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/blame/BlameOperation.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/blame/BlameOperation.java
@@ -174,7 +174,13 @@ public class BlameOperation implements IEGitOperation {
.getBoolean(UIPreferences.BLAME_IGNORE_WHITESPACE))
command.setTextComparator(RawTextComparator.WS_IGNORE_ALL);
- final BlameResult result = command.call();
+ BlameResult result;
+ try {
+ result = command.call();
+ } catch (Exception e1) {
+ Activator.error(e1.getMessage(), e1);
+ return;
+ }
if (result == null)
return;
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java
index 02a167c755..14cfc143ea 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commit/RepositoryCommit.java
@@ -186,7 +186,7 @@ public class RepositoryCommit extends WorkbenchAdapter implements IAdaptable {
}
notes = noteList.toArray(new RepositoryCommitNote[noteList
.size()]);
- } catch (IOException e) {
+ } catch (Exception e) {
Activator.logError("Error showing notes", e); //$NON-NLS-1$
notes = new RepositoryCommitNote[0];
}
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/CommitDialog.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/CommitDialog.java
index ad8faf33aa..d697360c0e 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/CommitDialog.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/CommitDialog.java
@@ -69,7 +69,6 @@ import org.eclipse.jface.viewers.ViewerFilter;
import org.eclipse.jface.window.Window;
import org.eclipse.jgit.api.AddCommand;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.NoFilepatternException;
import org.eclipse.jgit.lib.Constants;
import org.eclipse.jgit.lib.FileMode;
import org.eclipse.jgit.lib.IndexDiff;
@@ -979,7 +978,7 @@ public class CommitDialog extends TitleAreaDialog {
}
try {
addCommand.call();
- } catch (NoFilepatternException e) {
+ } catch (Exception e) {
Activator.logError(UIText.CommitDialog_ErrorAddingFiles, e);
}
for (Iterator<?> it = sel.iterator(); it.hasNext();) {
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/operations/GitScopeOperation.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/operations/GitScopeOperation.java
index a86b4dff96..86330451f6 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/operations/GitScopeOperation.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/operations/GitScopeOperation.java
@@ -11,7 +11,6 @@
*******************************************************************************/
package org.eclipse.egit.ui.internal.operations;
-import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.Arrays;
@@ -25,7 +24,6 @@ import org.eclipse.egit.ui.Activator;
import org.eclipse.egit.ui.UIText;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.Status;
-import org.eclipse.jgit.errors.NoWorkTreeException;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.team.core.mapping.ISynchronizationScopeManager;
import org.eclipse.team.ui.synchronize.ModelOperation;
@@ -93,10 +91,7 @@ public class GitScopeOperation extends ModelOperation {
hasChanged |= repoStatus.getModified().contains(path);
hasChanged |= repoStatus.getRemoved().contains(path);
hasChanged |= repoStatus.getUntracked().contains(path);
- } catch (NoWorkTreeException e) {
- Activator.logError(UIText.GitScopeOperation_couldNotDetermineState,
- e);
- } catch (IOException e) {
+ } catch (Exception e) {
Activator.logError(UIText.GitScopeOperation_couldNotDetermineState,
e);
}
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/tree/command/AddToIndexCommand.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/tree/command/AddToIndexCommand.java
index 86b67a540f..c2f54a9cdd 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/tree/command/AddToIndexCommand.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/tree/command/AddToIndexCommand.java
@@ -22,7 +22,7 @@ import org.eclipse.egit.ui.internal.repository.tree.RepositoryTreeNode;
import org.eclipse.egit.ui.internal.repository.tree.RepositoryTreeNodeType;
import org.eclipse.jgit.api.AddCommand;
import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.errors.NoFilepatternException;
+import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.lib.Repository;
/**
@@ -61,7 +61,7 @@ public class AddToIndexCommand extends RepositoriesViewCommandHandler<FileNode>
if (addCommand != null)
try {
addCommand.call();
- } catch (NoFilepatternException e) {
+ } catch (GitAPIException e) {
Activator.logError(UIText.AddToIndexCommand_addingFilesFailed,
e);
}
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/staging/StagingView.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/staging/StagingView.java
index f7a0ba1f43..075117193d 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/staging/StagingView.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/staging/StagingView.java
@@ -1045,12 +1045,16 @@ public class StagingView extends ViewPart {
add.call();
} catch (NoFilepatternException e1) {
// cannot happen
+ } catch (Exception e2) {
+ Activator.error(e2.getMessage(), e2);
}
if (rm != null)
try {
rm.call();
} catch (NoFilepatternException e) {
// cannot happen
+ } catch (Exception e2) {
+ Activator.error(e2.getMessage(), e2);
}
}

Back to the top