Class DfsFsck
- java.lang.Object
-
- org.eclipse.jgit.internal.storage.dfs.DfsFsck
-
public class DfsFsck extends java.lang.ObjectVerify the validity and connectivity of a DFS repository.
-
-
Field Summary
Fields Modifier and Type Field Description private booleanconnectivityOnlyprivate ObjectCheckerobjCheckerprivate DfsObjDatabaseobjdbprivate DfsRepositoryrepo
-
Constructor Summary
Constructors Constructor Description DfsFsck(DfsRepository repository)Initialize DFS fsck.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FsckErrorcheck(ProgressMonitor pm)Verify the integrity and connectivity of all objects in the object database.private voidcheckConnectivity(ProgressMonitor pm, FsckError errors)private voidcheckGitModules(ProgressMonitor pm, FsckError errors)private voidcheckPacks(ProgressMonitor pm, FsckError errors)voidsetConnectivityOnly(boolean connectivityOnly)Whether fsck should bypass object validity and integrity checks and only check connectivity.voidsetObjectChecker(ObjectChecker objChecker)Use a customized object checker instead of the default one.private voidverifyPack(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.IOExceptionjava.io.FileNotFoundException
-
verifyPack
private void verifyPack(ProgressMonitor pm, FsckError errors, DfsReader ctx, DfsPackFile pack, ReadableChannel ch) throws java.io.IOException, CorruptPackIndexException
- Throws:
java.io.IOExceptionCorruptPackIndexException
-
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.
-
-