Example usage for org.eclipse.jgit.diff RenameDetector setRenameLimit

List of usage examples for org.eclipse.jgit.diff RenameDetector setRenameLimit

Introduction

In this page you can find the example usage for org.eclipse.jgit.diff RenameDetector setRenameLimit.

Prototype

public void setRenameLimit(int limit) 

Source Link

Document

Set the limit on the number of files to perform inexact rename detection.

Usage

From source file:org.eclipse.che.git.impl.jgit.JGitDiffPage.java

License:Open Source License

private RenameDetector createRenameDetector() {
    RenameDetector renameDetector = new RenameDetector(repository);
    int renameLimit = request.getRenameLimit();
    if (renameLimit > 0) {
        renameDetector.setRenameLimit(renameLimit);
    }//from  w  w w.  j  av  a2 s  .com
    return renameDetector;
}

From source file:org.eclipse.orion.server.git.servlets.Diff.java

License:Eclipse Distribution License

protected void run() throws Exception {
    diffFmt.setRepository(db);//ww  w.j  a v  a2s. co  m
    try {
        if (cached) {
            if (oldTree == null) {
                ObjectId head = db.resolve(HEAD + "^{tree}"); //$NON-NLS-1$
                if (head == null)
                    throw new IllegalArgumentException(HEAD + " is not a tree"); //$NON-NLS-1$
                CanonicalTreeParser p = new CanonicalTreeParser();
                ObjectReader reader = db.newObjectReader();
                try {
                    p.reset(reader, head);
                } finally {
                    reader.release();
                }
                oldTree = p;
            }
            newTree = new DirCacheIterator(db.readDirCache());
        } else if (oldTree == null) {
            oldTree = new DirCacheIterator(db.readDirCache());
            newTree = new FileTreeIterator(db);
        } else if (newTree == null)
            newTree = new FileTreeIterator(db);

        diffFmt.setProgressMonitor(new TextProgressMonitor());
        diffFmt.setPathFilter(pathFilter);
        if (detectRenames != null)
            diffFmt.setDetectRenames(detectRenames.booleanValue());
        if (renameLimit != null && diffFmt.isDetectRenames()) {
            RenameDetector rd = diffFmt.getRenameDetector();
            rd.setRenameLimit(renameLimit.intValue());
        }

        if (showNameAndStatusOnly) {
            nameStatus(out, diffFmt.scan(oldTree, newTree));
            out.flush();
        } else {
            diffFmt.format(oldTree, newTree);
            diffFmt.flush();
        }
    } finally {
        diffFmt.release();
    }
}