public class DfsFsck
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private boolean |
connectivityOnly |
private ObjectChecker |
objChecker |
private DfsObjDatabase |
objdb |
private DfsRepository |
repo |
Constructor and Description |
---|
DfsFsck(DfsRepository repository)
Initialize DFS fsck.
|
Modifier and Type | Method and 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) |
private final DfsRepository repo
private final DfsObjDatabase objdb
private ObjectChecker objChecker
private boolean connectivityOnly
public DfsFsck(DfsRepository repository)
repository
- the dfs repository to check.public FsckError check(ProgressMonitor pm) throws java.io.IOException
pm
- callback to provide progress feedback during the check.java.io.IOException
- if encounters IO errors during the process.private void checkPacks(ProgressMonitor pm, FsckError errors) throws java.io.IOException, java.io.FileNotFoundException
java.io.IOException
java.io.FileNotFoundException
private void verifyPack(ProgressMonitor pm, FsckError errors, DfsReader ctx, DfsPackFile pack, ReadableChannel ch) throws java.io.IOException, CorruptPackIndexException
java.io.IOException
CorruptPackIndexException
private void checkGitModules(ProgressMonitor pm, FsckError errors) throws java.io.IOException
java.io.IOException
private void checkConnectivity(ProgressMonitor pm, FsckError errors) throws java.io.IOException
java.io.IOException
public void setObjectChecker(ObjectChecker objChecker)
check(ProgressMonitor)
call.objChecker
- A customized object checker.public void setConnectivityOnly(boolean connectivityOnly)
connectivityOnly
- whether fsck should bypass object validity and integrity
checks and only check connectivity. The default is
false
, meaning to run all checks.