Class DfsFsck
- java.lang.Object
-
- org.eclipse.jgit.internal.storage.dfs.DfsFsck
-
public class DfsFsck extends java.lang.Object
Verify the validity and connectivity of a DFS repository.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
connectivityOnly
private ObjectChecker
objChecker
private DfsObjDatabase
objdb
private DfsRepository
repo
-
Constructor Summary
Constructors Constructor Description DfsFsck(DfsRepository repository)
Initialize DFS fsck.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FsckError
check(ProgressMonitor pm)
Verify the integrity and connectivity of all objects in the object database.private void
checkConnectivity(ProgressMonitor pm, FsckError errors)
private void
checkGitModules(ProgressMonitor pm, FsckError errors)
private void
checkPacks(ProgressMonitor pm, FsckError errors)
void
setConnectivityOnly(boolean connectivityOnly)
Whether fsck should bypass object validity and integrity checks and only check connectivity.void
setObjectChecker(ObjectChecker objChecker)
Use a customized object checker instead of the default one.private void
verifyPack(ProgressMonitor pm, FsckError errors, DfsReader ctx, DfsPackFile pack, ReadableChannel ch)
-
-
-
Field Detail
-
repo
private final DfsRepository repo
-
objdb
private final DfsObjDatabase objdb
-
objChecker
private ObjectChecker objChecker
-
connectivityOnly
private boolean connectivityOnly
-
-
Constructor Detail
-
DfsFsck
public DfsFsck(DfsRepository repository)
Initialize DFS fsck.- Parameters:
repository
- the dfs repository to check.
-
-
Method Detail
-
check
public FsckError check(ProgressMonitor pm) throws java.io.IOException
Verify the integrity and connectivity of all objects in the object database.- Parameters:
pm
- callback to provide progress feedback during the check.- Returns:
- all errors about the repository.
- Throws:
java.io.IOException
- if encounters IO errors during the process.
-
checkPacks
private void checkPacks(ProgressMonitor pm, FsckError errors) throws java.io.IOException, java.io.FileNotFoundException
- Throws:
java.io.IOException
java.io.FileNotFoundException
-
verifyPack
private void verifyPack(ProgressMonitor pm, FsckError errors, DfsReader ctx, DfsPackFile pack, ReadableChannel ch) throws java.io.IOException, CorruptPackIndexException
- Throws:
java.io.IOException
CorruptPackIndexException
-
checkGitModules
private void checkGitModules(ProgressMonitor pm, FsckError errors) throws java.io.IOException
- Throws:
java.io.IOException
-
checkConnectivity
private void checkConnectivity(ProgressMonitor pm, FsckError errors) throws java.io.IOException
- Throws:
java.io.IOException
-
setObjectChecker
public void setObjectChecker(ObjectChecker objChecker)
Use a customized object checker instead of the default one. Caller can specify a skip list to ignore some errors. It will be reset at the start of each {check(ProgressMonitor)
call.- Parameters:
objChecker
- A customized object checker.
-
setConnectivityOnly
public void setConnectivityOnly(boolean connectivityOnly)
Whether fsck should bypass object validity and integrity checks and only check connectivity.- Parameters:
connectivityOnly
- whether fsck should bypass object validity and integrity checks and only check connectivity. The default isfalse
, meaning to run all checks.
-
-