Example usage for org.eclipse.jgit.revwalk ObjectWalk ObjectWalk

List of usage examples for org.eclipse.jgit.revwalk ObjectWalk ObjectWalk

Introduction

In this page you can find the example usage for org.eclipse.jgit.revwalk ObjectWalk ObjectWalk.

Prototype

public ObjectWalk(ObjectReader or) 

Source Link

Document

Create a new revision and object walker for a given repository.

Usage

From source file:com.google.gerrit.httpd.rpc.project.AddBranch.java

License:Apache License

private RevWalk verifyConnected(final Repository repo, final ObjectId revid) throws InvalidRevisionException {
    try {/* w w w  .j a v  a 2  s . com*/
        final ObjectWalk rw = new ObjectWalk(repo);
        try {
            rw.markStart(rw.parseCommit(revid));
        } catch (IncorrectObjectTypeException err) {
            throw new InvalidRevisionException();
        }
        for (final Ref r : repo.getAllRefs().values()) {
            try {
                rw.markUninteresting(rw.parseAny(r.getObjectId()));
            } catch (MissingObjectException err) {
                continue;
            }
        }
        rw.checkConnectivity();
        return rw;
    } catch (IncorrectObjectTypeException err) {
        throw new InvalidRevisionException();
    } catch (MissingObjectException err) {
        throw new InvalidRevisionException();
    } catch (IOException err) {
        log.error("Repository \"" + repo.getDirectory() + "\" may be corrupt; suggest running git fsck", err);
        throw new InvalidRevisionException();
    }
}

From source file:com.google.gerrit.server.project.CreateBranch.java

License:Apache License

private RevWalk verifyConnected(final Repository repo, final ObjectId revid) throws InvalidRevisionException {
    try {//from w  w  w  .  ja va 2 s.c  om
        final ObjectWalk rw = new ObjectWalk(repo);
        try {
            rw.markStart(rw.parseCommit(revid));
        } catch (IncorrectObjectTypeException err) {
            throw new InvalidRevisionException();
        }
        RefDatabase refDb = repo.getRefDatabase();
        Iterable<Ref> refs = Iterables.concat(refDb.getRefs(Constants.R_HEADS).values(),
                refDb.getRefs(Constants.R_TAGS).values());
        Ref rc = refDb.exactRef(RefNames.REFS_CONFIG);
        if (rc != null) {
            refs = Iterables.concat(refs, Collections.singleton(rc));
        }
        for (Ref r : refs) {
            try {
                rw.markUninteresting(rw.parseAny(r.getObjectId()));
            } catch (MissingObjectException err) {
                continue;
            }
        }
        rw.checkConnectivity();
        return rw;
    } catch (IncorrectObjectTypeException | MissingObjectException err) {
        throw new InvalidRevisionException();
    } catch (IOException err) {
        log.error("Repository \"" + repo.getDirectory() + "\" may be corrupt; suggest running git fsck", err);
        throw new InvalidRevisionException();
    }
}

From source file:com.google.gerrit.server.project.RefUtil.java

License:Apache License

public static RevWalk verifyConnected(Repository repo, ObjectId revid) throws InvalidRevisionException {
    try {/*from ww  w. ja  v  a 2  s . com*/
        ObjectWalk rw = new ObjectWalk(repo);
        try {
            rw.markStart(rw.parseCommit(revid));
        } catch (IncorrectObjectTypeException err) {
            throw new InvalidRevisionException();
        }
        RefDatabase refDb = repo.getRefDatabase();
        Iterable<Ref> refs = Iterables.concat(refDb.getRefs(Constants.R_HEADS).values(),
                refDb.getRefs(Constants.R_TAGS).values());
        Ref rc = refDb.exactRef(RefNames.REFS_CONFIG);
        if (rc != null) {
            refs = Iterables.concat(refs, Collections.singleton(rc));
        }
        for (Ref r : refs) {
            try {
                rw.markUninteresting(rw.parseAny(r.getObjectId()));
            } catch (MissingObjectException err) {
                continue;
            }
        }
        rw.checkConnectivity();
        return rw;
    } catch (IncorrectObjectTypeException | MissingObjectException err) {
        throw new InvalidRevisionException();
    } catch (IOException err) {
        log.error("Repository \"" + repo.getDirectory() + "\" may be corrupt; suggest running git fsck", err);
        throw new InvalidRevisionException();
    }
}

From source file:kr.re.ec.grigit.graph.ui.RevWalker.java

License:Eclipse Distribution License

protected RevWalk createWalk() {
    RevWalk result;/*  w w  w .  j  ava  2s  . c  om*/
    if (objects)
        result = new ObjectWalk(db);
    else if (argWalk != null)
        result = argWalk;
    else
        result = argWalk = new RevWalk(db);
    result.setRewriteParents(false);
    return result;
}

From source file:org.eclipse.egit.core.synchronize.dto.GitSynchronizeData.java

License:Open Source License

/**
 * Constructs {@link GitSynchronizeData} object
 *
 * @param repository/*  w  w w .  java2s .  c  om*/
 * @param srcRev
 * @param dstRev
 * @param includeLocal
 *            <code>true</code> if local changes should be included in
 *            comparison
 * @throws IOException
 */
public GitSynchronizeData(Repository repository, String srcRev, String dstRev, boolean includeLocal)
        throws IOException {
    isNotNull(repository);
    isNotNull(srcRev);
    isNotNull(dstRev);
    repo = repository;

    ObjectWalk ow = new ObjectWalk(repo);
    this.srcRev = ow.parseCommit(repo.resolve(srcRev));
    this.dstRev = ow.parseCommit(repo.resolve(dstRev));

    this.includeLocal = includeLocal;
    repoParentPath = repo.getDirectory().getParentFile().getAbsolutePath();

    projects = new HashSet<IProject>();
    final IProject[] workspaceProjects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
    for (IProject project : workspaceProjects) {
        RepositoryMapping mapping = RepositoryMapping.getMapping(project);
        if (mapping != null && mapping.getRepository() == repo)
            projects.add(project);
    }

}