Example usage for org.eclipse.jgit.lib AbbreviatedObjectId toObjectId

List of usage examples for org.eclipse.jgit.lib AbbreviatedObjectId toObjectId

Introduction

In this page you can find the example usage for org.eclipse.jgit.lib AbbreviatedObjectId toObjectId.

Prototype

public ObjectId toObjectId() 

Source Link

Document

A complete ObjectId; null if #isComplete() is false

Usage

From source file:MyDiffFormatter.java

License:Eclipse Distribution License

private String format(AbbreviatedObjectId id) {
    if (id.isComplete() && db != null) {
        try {/*from  w  ww  .  j  av a2  s . c  o m*/
            int abbreviationLength = 7;
            id = reader.abbreviate(id.toObjectId(), abbreviationLength);
        } catch (IOException cannotAbbreviate) {
            // Ignore this. We'll report the full identity.
        }
    }
    return id.name();
}

From source file:MyDiffFormatter.java

License:Eclipse Distribution License

private byte[] open(DiffEntry.Side side, DiffEntry entry) throws IOException {
    if (entry.getMode(side) == FileMode.MISSING)
        return EMPTY;

    if (entry.getMode(side).getObjectType() != Constants.OBJ_BLOB)
        return EMPTY;

    AbbreviatedObjectId id = entry.getId(side);
    if (!id.isComplete()) {
        Collection<ObjectId> ids = reader.resolve(id);
        if (ids.size() == 1) {
            throw new IllegalStateException();
            //                id = AbbreviatedObjectId.fromObjectId(ids.iterator().next());
            //                switch (side) {
            //                    case OLD:
            //                        entry.oldId = id;
            //                        break;
            //                    case NEW:
            //                        entry.newId = id;
            //                        break;
            //                }
        } else if (ids.size() == 0)
            throw new MissingObjectException(id, Constants.OBJ_BLOB);
        else/*from w w  w  . j  a  v  a2s  .  c  o  m*/
            throw new AmbiguousObjectException(id, ids);
    }

    try {
        ObjectLoader ldr = source.open(side, entry);
        int binaryFileThreshold = DEFAULT_BINARY_FILE_THRESHOLD;
        return ldr.getBytes(binaryFileThreshold);

    } catch (LargeObjectException.ExceedsLimit overLimit) {
        return BINARY;

    } catch (LargeObjectException.ExceedsByteArrayLimit overLimit) {
        return BINARY;

    } catch (LargeObjectException.OutOfMemory tooBig) {
        return BINARY;

    } catch (LargeObjectException tooBig) {
        tooBig.setObjectId(id.toObjectId());
        throw tooBig;
    }
}

From source file:com.madgag.agit.diff.LineContextDiffer.java

License:Open Source License

private String format(AbbreviatedObjectId id) {
    if (id.isComplete()) {
        try {// w  w w.  j a  v a2s  .  c  om
            id = objectReader.abbreviate(id.toObjectId(), abbreviationLength);
        } catch (IOException cannotAbbreviate) {
            // Ignore this. We'll report the full identity.
        } finally {
            // reader.release();
        }
    }
    return id.name();
}

From source file:com.madgag.agit.diff.LineContextDiffer.java

License:Open Source License

private byte[] open(ObjectReader reader, FileMode mode, AbbreviatedObjectId id) throws IOException {
    if (mode == FileMode.MISSING)
        return new byte[] {};

    if (mode.getObjectType() != Constants.OBJ_BLOB)
        return new byte[] {};

    if (!id.isComplete()) {
        Collection<ObjectId> ids = reader.resolve(id);
        if (ids.size() == 1)
            id = AbbreviatedObjectId.fromObjectId(ids.iterator().next());
        else if (ids.size() == 0)
            throw new MissingObjectException(id, Constants.OBJ_BLOB);
        else// www .j  av  a  2 s.com
            throw new AmbiguousObjectException(id, ids);
    }

    ObjectLoader ldr = reader.open(id.toObjectId());
    return ldr.getCachedBytes(bigFileThreshold);
}

From source file:jbenchmarker.trace.git.GitExtraction.java

License:Open Source License

byte[] open(DiffEntry.Side side, DiffEntry entry) throws IOException {
    if (entry.getMode(side) == FileMode.MISSING) {
        return EMPTY;
    }//from ww w . j  a va 2 s . com

    if (entry.getMode(side).getObjectType() != Constants.OBJ_BLOB) {
        return EMPTY;
    }

    AbbreviatedObjectId id = entry.getId(side);
    if (!id.isComplete()) {
        Collection<ObjectId> ids = reader.resolve(id);
        if (ids.size() == 1) {
            //                id = AbbreviatedObjectId.fromObjectId(ids.iterator().next());
            //                switch (side) {
            //                    case OLD:
            //                        entry.oldId = id;
            //                        break;
            //                    case NEW:
            //                        entry.newId = id;
            //                        break;
            //                }
        } else if (ids.isEmpty()) {
            throw new MissingObjectException(id, Constants.OBJ_BLOB);
        } else {
            throw new AmbiguousObjectException(id, ids);
        }
    }
    ObjectLoader ldr = pairSource.open(side, entry);
    return getBytes(ldr, id.toObjectId());
}

From source file:org.eclipse.egit.internal.mylyn.ui.commit.TaskReferenceFactory.java

License:Open Source License

private static RevCommit getCommitForElement(Object element) {
    RevCommit commit = null;//from   www  . j av a  2  s .  c  o  m
    if (element instanceof RevCommit)
        commit = (RevCommit) element;
    else if (element instanceof GitModelCommit) {
        GitModelCommit modelCommit = (GitModelCommit) element;
        if (!(modelCommit.getParent() instanceof GitModelRepository))
            return null; // should never happen

        GitModelRepository parent = (GitModelRepository) modelCommit.getParent();
        Repository repo = parent.getRepository();
        AbbreviatedObjectId id = modelCommit.getCachedCommitObj().getId();

        commit = new RevWalk(repo).lookupCommit(id.toObjectId());
    }
    return commit;
}

From source file:org.gitective.core.filter.commit.CommitDiffEditFilter.java

License:Open Source License

@Override
public boolean include(final RevWalk walker, final RevCommit commit, final Collection<DiffEntry> diffs) {
    markStart(commit);//from w w w. ja v a 2s.  c  o m
    final ObjectReader reader = walker.getObjectReader();
    for (DiffEntry diff : diffs) {
        if (!isFileDiff(diff))
            continue;
        final AbbreviatedObjectId oldId = diff.getOldId();
        if (oldId == null)
            continue;
        if (!include(commit, diff, BlobUtils.diff(reader, oldId.toObjectId(), diff.getNewId().toObjectId())))
            return markEnd(commit).include(false);
    }
    markEnd(commit);
    return true;
}

From source file:org.gitective.core.filter.commit.DiffLineSizeFilter.java

License:Open Source License

@Override
public boolean include(RevWalk walker, RevCommit commit, Collection<DiffEntry> diffs) {
    count = 0;//  ww w  .  j  av  a  2 s .c o  m
    final ObjectReader reader = walker.getObjectReader();
    for (DiffEntry diff : diffs) {
        if (!isFileDiff(diff))
            continue;
        final AbbreviatedObjectId oldId = diff.getOldId();
        if (oldId == null)
            continue;
        include(commit, diff, BlobUtils.diff(reader, oldId.toObjectId(), diff.getNewId().toObjectId()));
        if (count >= total)
            break;
    }
    return count >= total ? true : include(false);
}

From source file:org.gitective.core.filter.commit.EmptyBlobAddFilter.java

License:Open Source License

@Override
public boolean include(final RevCommit commit, final Collection<DiffEntry> diffs) throws IOException {
    for (DiffEntry diff : diffs) {
        final AbbreviatedObjectId oldId = diff.getOldId();
        if (oldId == null)
            continue;
        if (!EMPTY_BLOB_ID.equals(oldId.toObjectId()) && EMPTY_BLOB_ID.equals(diff.getNewId().toObjectId()))
            return true;
    }/* ww w.  j  a v a  2  s. c  o  m*/
    return false;
}

From source file:org.gitective.core.filter.commit.EmptyBlobRemoveFilter.java

License:Open Source License

@Override
public boolean include(final RevCommit commit, final Collection<DiffEntry> diffs) throws IOException {
    for (DiffEntry diff : diffs) {
        final AbbreviatedObjectId oldId = diff.getOldId();
        if (oldId == null)
            continue;
        if (EMPTY_BLOB_ID.equals(oldId.toObjectId()) && !EMPTY_BLOB_ID.equals(diff.getNewId().toObjectId()))
            return true;
    }//  w w w .j a  v  a 2s.  c om
    return false;
}