summaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit
diff options
context:
space:
mode:
authorAnna Papitto <annapapitto@google.com>2023-05-09 10:27:52 -0700
committerIvan Frade <ifrade@google.com>2023-05-11 16:49:55 -0400
commit2c89a3ec74a70bf8c9d89838e2e4cbf9dcea3b17 (patch)
tree14bb2dcdb5b5496303e7437777600d36f0e36476 /org.eclipse.jgit
parente6f216119f2624db1e51f3414a3fec7dc3d67a2f (diff)
downloadjgit-2c89a3ec74a70bf8c9d89838e2e4cbf9dcea3b17.tar.gz
jgit-2c89a3ec74a70bf8c9d89838e2e4cbf9dcea3b17.zip
PackExt: add a #getTmpExtension method
During garbage collection, extensions for temporary files for indices are formatted manually. Add a method to PackExt to generate the temporary file extensions for each type of index file programmatically. Change-Id: I210bc2702e750bf0aea643b1a9a8536adebef179 Signed-off-by: Anna Papitto <annapapitto@google.com>
Diffstat (limited to 'org.eclipse.jgit')
-rw-r--r--org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/GC.java14
-rw-r--r--org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackExt.java9
2 files changed, 18 insertions, 5 deletions
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/GC.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/GC.java
index be359bbeaa..11757aabda 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/GC.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/file/GC.java
@@ -11,6 +11,7 @@
package org.eclipse.jgit.internal.storage.file;
import static org.eclipse.jgit.internal.storage.pack.PackExt.BITMAP_INDEX;
+import static org.eclipse.jgit.internal.storage.pack.PackExt.COMMIT_GRAPH;
import static org.eclipse.jgit.internal.storage.pack.PackExt.INDEX;
import static org.eclipse.jgit.internal.storage.pack.PackExt.KEEP;
import static org.eclipse.jgit.internal.storage.pack.PackExt.PACK;
@@ -943,7 +944,8 @@ public class GC {
try (RevWalk walk = new RevWalk(repo)) {
CommitGraphWriter writer = new CommitGraphWriter(
GraphCommits.fromWalk(pm, wants, walk));
- tmpFile = File.createTempFile("commit_", ".graph_tmp", //$NON-NLS-1$//$NON-NLS-2$
+ tmpFile = File.createTempFile("commit_", //$NON-NLS-1$
+ COMMIT_GRAPH.getTmpExtension(),
repo.getObjectDatabase().getInfoDirectory());
// write the commit-graph file
try (FileOutputStream fos = new FileOutputStream(tmpFile);
@@ -1292,10 +1294,11 @@ public class GC {
ObjectId id = pw.computeName();
File packdir = repo.getObjectDatabase().getPackDirectory();
packdir.mkdirs();
- tmpPack = File.createTempFile("gc_", ".pack_tmp", packdir); //$NON-NLS-1$ //$NON-NLS-2$
- final String tmpBase = tmpPack.getName()
+ tmpPack = File.createTempFile("gc_", //$NON-NLS-1$
+ PACK.getTmpExtension(), packdir);
+ String tmpBase = tmpPack.getName()
.substring(0, tmpPack.getName().lastIndexOf('.'));
- File tmpIdx = new File(packdir, tmpBase + ".idx_tmp"); //$NON-NLS-1$
+ File tmpIdx = new File(packdir, tmpBase + INDEX.getTmpExtension());
tmpExts.put(INDEX, tmpIdx);
if (!tmpIdx.createNewFile())
@@ -1321,7 +1324,8 @@ public class GC {
}
if (pw.prepareBitmapIndex(pm)) {
- File tmpBitmapIdx = new File(packdir, tmpBase + ".bitmap_tmp"); //$NON-NLS-1$
+ File tmpBitmapIdx = new File(packdir,
+ tmpBase + BITMAP_INDEX.getTmpExtension());
tmpExts.put(BITMAP_INDEX, tmpBitmapIdx);
if (!tmpBitmapIdx.createNewFile())
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackExt.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackExt.java
index adad411c6f..d580083795 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackExt.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackExt.java
@@ -71,6 +71,15 @@ public enum PackExt {
return 1 << getPosition();
}
+ /**
+ * Format a temporary file extension for this PackExt.
+ *
+ * @return a temporary file extension
+ */
+ public String getTmpExtension() {
+ return String.format(".%s_tmp", ext); //$NON-NLS-1$
+ }
+
/** {@inheritDoc} */
@Override
public String toString() {