Git{Add|Clone}Task: Catch specific exceptions rather than Exception

Change-Id: If3db5a1375485e97f9811546e310e441475db1a6
Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
This commit is contained in:
David Pursehouse 2016-10-18 13:17:26 +09:00
parent 4e3c5e1f13
commit a3c0a7f9c4
2 changed files with 9 additions and 6 deletions

View File

@ -53,6 +53,7 @@
import org.apache.tools.ant.types.resources.Union;
import org.eclipse.jgit.api.AddCommand;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.storage.file.FileRepositoryBuilder;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.lib.RepositoryCache;
@ -135,7 +136,7 @@ public void execute() throws BuildException {
gitAdd.addFilepattern(toAdd);
}
gitAdd.call();
} catch (Exception e) {
} catch (IOException | GitAPIException e) {
throw new BuildException("Could not add files to index." + src, e);
}

View File

@ -49,12 +49,14 @@
import org.apache.tools.ant.Task;
import org.eclipse.jgit.api.CloneCommand;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.api.errors.JGitInternalException;
import org.eclipse.jgit.lib.Constants;
import org.eclipse.jgit.transport.URIish;
/**
* Clone a repository into a new directory.
*
*
* @see <a href="http://www.kernel.org/pub/software/scm/git/docs/git-clone.html"
* >git-clone(1)</a>
*/
@ -76,9 +78,9 @@ public void setUri(String uri) {
/**
* The optional directory associated with the clone operation. If the
* directory isn't set, a name associated with the source uri will be used.
*
*
* @see URIish#getHumanishName()
*
*
* @param destination
* the directory to clone to
*/
@ -105,12 +107,12 @@ public void setBranch(String branch) {
@Override
public void execute() throws BuildException {
log("Cloning repository " + uri);
CloneCommand clone = Git.cloneRepository();
try {
clone.setURI(uri).setDirectory(destination).setBranch(branch).setBare(bare);
clone.call().getRepository().close();
} catch (Exception e) {
} catch (GitAPIException | JGitInternalException e) {
log("Could not clone repository: " + e, e, Project.MSG_ERR);
throw new BuildException("Could not clone repository: " + e.getMessage(), e);
}