Browse Source

Repository: Deprecate #peel method

Callers should use getRefDatabase().peel(ref) instead since it
doesn't swallow the IOException.

Adapt all trivial callers to user the alternative.

DescribeCommand still uses the deprecated method and is not adapted in
this change since it will require more refactoring to add handling of
the IOException.

Change-Id: I14d4a95a5e0570548753b9fc5c03d024dc3ff832
Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
stable-5.1
David Pursehouse 6 years ago
parent
commit
f6c4a492d0
  1. 2
      org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/RebuildRefTree.java
  2. 2
      org.eclipse.jgit.test/tst/org/eclipse/jgit/api/LogCommandTest.java
  3. 9
      org.eclipse.jgit.test/tst/org/eclipse/jgit/api/TagCommandTest.java
  4. 2
      org.eclipse.jgit.test/tst/org/eclipse/jgit/gitrepo/RepoCommandTest.java
  5. 2
      org.eclipse.jgit/src/org/eclipse/jgit/api/LogCommand.java
  6. 2
      org.eclipse.jgit/src/org/eclipse/jgit/api/MergeCommand.java
  7. 2
      org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java
  8. 4
      org.eclipse.jgit/src/org/eclipse/jgit/transport/RefAdvertiser.java
  9. 2
      org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java

2
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/RebuildRefTree.java

@ -161,7 +161,7 @@ class RebuildRefTree extends TextBuiltin {
}
cmds.add(new org.eclipse.jgit.internal.storage.reftree.Command(
null,
db.peel(r)));
db.getRefDatabase().peel(r)));
}
tree.apply(cmds);
return tree;

2
org.eclipse.jgit.test/tst/org/eclipse/jgit/api/LogCommandTest.java

@ -116,7 +116,7 @@ public class LogCommandTest extends RepositoryTestCase {
Iterator<RevCommit> log = git.log().all().call().iterator();
assertTrue(log.hasNext());
RevCommit commit = log.next();
tag = db.peel(tag);
tag = db.getRefDatabase().peel(tag);
assertEquals(commit.getName(), tag.getPeeledObjectId().getName());
assertTrue(commits.contains(commit));

9
org.eclipse.jgit.test/tst/org/eclipse/jgit/api/TagCommandTest.java

@ -67,19 +67,22 @@ public class TagCommandTest extends RepositoryTestCase {
RevWalk walk = new RevWalk(db)) {
RevCommit commit = git.commit().setMessage("initial commit").call();
Ref tagRef = git.tag().setName("tag").call();
assertEquals(commit.getId(), db.peel(tagRef).getPeeledObjectId());
assertEquals(commit.getId(),
db.getRefDatabase().peel(tagRef).getPeeledObjectId());
assertEquals("tag", walk.parseTag(tagRef.getObjectId()).getTagName());
}
}
@Test
public void testTagging() throws GitAPIException, JGitInternalException {
public void testTagging()
throws GitAPIException, JGitInternalException, IOException {
try (Git git = new Git(db)) {
git.commit().setMessage("initial commit").call();
RevCommit commit = git.commit().setMessage("second commit").call();
git.commit().setMessage("third commit").call();
Ref tagRef = git.tag().setObjectId(commit).setName("tag").call();
assertEquals(commit.getId(), db.peel(tagRef).getPeeledObjectId());
assertEquals(commit.getId(),
db.getRefDatabase().peel(tagRef).getPeeledObjectId());
}
}

2
org.eclipse.jgit.test/tst/org/eclipse/jgit/gitrepo/RepoCommandTest.java

@ -160,7 +160,7 @@ public class RepoCommandTest extends RepositoryTestCase {
Ref ref = r.findRef(refname);
if (ref == null) return null;
ref = r.peel(ref);
ref = r.getRefDatabase().peel(ref);
ObjectId id = ref.getObjectId();
return id;
} catch (IOException e) {

2
org.eclipse.jgit/src/org/eclipse/jgit/api/LogCommand.java

@ -274,7 +274,7 @@ public class LogCommand extends GitCommand<Iterable<RevCommit>> {
public LogCommand all() throws IOException {
for (Ref ref : getRepository().getRefDatabase().getRefs()) {
if(!ref.isPeeled())
ref = getRepository().peel(ref);
ref = getRepository().getRefDatabase().peel(ref);
ObjectId objectId = ref.getPeeledObjectId();
if (objectId == null)

2
org.eclipse.jgit/src/org/eclipse/jgit/api/MergeCommand.java

@ -255,7 +255,7 @@ public class MergeCommand extends GitCommand<MergeResult> {
refLogMessage.append(ref.getName());
// handle annotated tags
ref = repo.peel(ref);
ref = repo.getRefDatabase().peel(ref);
ObjectId objectId = ref.getPeeledObjectId();
if (objectId == null)
objectId = ref.getObjectId();

2
org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java

@ -1133,7 +1133,9 @@ public abstract class Repository implements AutoCloseable {
* new Ref object representing the same data as Ref, but isPeeled()
* will be true and getPeeledObjectId will contain the peeled object
* (or null).
* @deprecated use {@code getRefDatabase().peel(ref)} instead.
*/
@Deprecated
@NonNull
public Ref peel(Ref ref) {
try {

4
org.eclipse.jgit/src/org/eclipse/jgit/transport/RefAdvertiser.java

@ -322,7 +322,7 @@ public abstract class RefAdvertiser {
String peelPart = ""; //$NON-NLS-1$
if (derefTags) {
if (!ref.isPeeled() && repository != null) {
ref = repository.peel(ref);
ref = repository.getRefDatabase().peel(ref);
}
ObjectId peeledObjectId = ref.getPeeledObjectId();
if (peeledObjectId != null) {
@ -342,7 +342,7 @@ public abstract class RefAdvertiser {
if (!ref.isPeeled()) {
if (repository == null)
continue;
ref = repository.peel(ref);
ref = repository.getRefDatabase().peel(ref);
}
if (ref.getPeeledObjectId() != null)

2
org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java

@ -1932,7 +1932,7 @@ public class UploadPack {
}
if (!ref.isPeeled())
ref = db.peel(ref);
ref = db.getRefDatabase().peel(ref);
ObjectId peeledId = ref.getPeeledObjectId();
objectId = ref.getObjectId();

Loading…
Cancel
Save