Package org.locationtech.geogig.api

Examples of org.locationtech.geogig.api.RevCommit


     *
     * @param commitId the {@code ObjectId} for the commit
     * @return the {@code RevCommit}
     */
    public RevCommit getCommit(final ObjectId commitId) {
        RevCommit commit = objectDatabase().getCommit(commitId);

        return commit;
    }
View Full Code Here


        // find the root tree
        ObjectId commitId = command(RevParse.class).setRefSpec(Ref.HEAD).call().get();
        if (commitId.isNull()) {
            return commitId;
        }
        RevCommit commit = command(RevObjectParse.class).setRefSpec(commitId.toString())
                .call(RevCommit.class).get();
        ObjectId treeId = commit.getTreeId();
        return treeId;
    }
View Full Code Here

        List<RevCommit> commits = new ArrayList<RevCommit>();

        for (Feature f : features) {
            insertAndAdd(geogig, f);
            if (oneCommitPerFeature) {
                RevCommit commit = geogig.command(CommitOp.class).call();
                commits.add(commit);
            }
        }

        if (!oneCommitPerFeature) {
            RevCommit commit = geogig.command(CommitOp.class).call();
            commits.add(commit);
        }

        return commits;
    }
View Full Code Here

                .call();

        BlameReport report = new BlameReport(featureType.get());

        Iterator<RevCommit> log = command(LogOp.class).addPath(path).setUntil(commit).call();
        RevCommit commit = log.next();
        RevObjectParse revObjectParse = command(RevObjectParse.class);
        DiffOp diffOp = command(DiffOp.class);
        DiffFeature diffFeature = command(DiffFeature.class);

        while (!report.isComplete()) {
            if (!log.hasNext()) {
                String refSpec = commit.getId().toString() + ":" + path;
                RevFeature feature = revObjectParse.setRefSpec(refSpec).call(RevFeature.class)
                        .get();
                report.setFirstVersion(feature, commit);
                break;
            }
            RevCommit commitB = log.next();
            Iterator<DiffEntry> diffs = diffOp.setNewVersion(commit.getId())
                    .setOldVersion(commitB.getId()).setReportTrees(false).call();

            while (diffs.hasNext()) {
                DiffEntry diff = diffs.next();
                if (path.equals(diff.newPath())) {
                    if (diff.isAdd()) {
View Full Code Here

        Iterator<DiffEntry> difflist = geogig.command(DiffOp.class).call();
        assertNotNull(difflist);
        assertFalse(difflist.hasNext());

        final ObjectId oid1 = insertAndAdd(points1);
        final RevCommit commit1_1 = geogig.command(CommitOp.class).call();
        try {
            diffOp.setOldVersion(oid1.toString()).setNewVersion(Ref.HEAD).call();
            fail("Expected IAE as oldVersion is not a commit");
        } catch (IllegalArgumentException e) {
            assertTrue(e.getMessage(), e.getMessage().contains(oid1.toString()));
            assertTrue(e.getMessage(),
                    e.getMessage().contains("doesn't resolve to a tree-ish object"));
        }
        try {
            diffOp.setOldVersion(commit1_1.getId().toString()).setNewVersion(oid1.toString())
                    .call();
            fail("Expected IAE as newVersion is not a commit");
        } catch (IllegalArgumentException e) {
            assertTrue(e.getMessage(), e.getMessage().contains(oid1.toString()));
            assertTrue(e.getMessage(),
View Full Code Here

    @Test
    public void testNoChangeSameCommit() throws Exception {

        insertAndAdd(points1);
        final RevCommit commit = geogig.command(CommitOp.class).setAll(true).call();

        assertFalse(diffOp.setOldVersion(commit.getId().toString())
                .setNewVersion(commit.getId().toString()).call().hasNext());
    }
View Full Code Here

    @Test
    public void testSingleAdditionReverseOrder() throws Exception {

        final ObjectId newOid = insertAndAdd(points1);
        final RevCommit commit = geogig.command(CommitOp.class).setAll(true).call();

        List<DiffEntry> difflist = toList(diffOp.setOldVersion(commit.getId())
                .setNewVersion(ObjectId.NULL).call());

        assertNotNull(difflist);
        assertEquals(1, difflist.size());
        DiffEntry de = difflist.get(0);
View Full Code Here

    }

    @Test
    public void testSingleDeletion() throws Exception {
        final ObjectId featureContentId = insertAndAdd(points1);
        final RevCommit addCommit = geogig.command(CommitOp.class).setAll(true).call();

        assertTrue(deleteAndAdd(points1));
        final RevCommit deleteCommit = geogig.command(CommitOp.class).setAll(true).call();

        List<DiffEntry> difflist = toList(diffOp.setOldVersion(addCommit.getId())
                .setNewVersion(deleteCommit.getId()).call());

        final String path = NodeRef.appendChild(pointsName, points1.getIdentifier().getID());

        assertNotNull(difflist);
        assertEquals(1, difflist.size());
View Full Code Here

    @Test
    public void testSingleDeletionReverseOrder() throws Exception {

        final ObjectId featureContentId = insertAndAdd(points1);
        final RevCommit addCommit = geogig.command(CommitOp.class).setAll(true).call();

        assertTrue(deleteAndAdd(points1));
        final RevCommit deleteCommit = geogig.command(CommitOp.class).setAll(true).call();

        // set old/new version in reverse order
        List<DiffEntry> difflist = toList(diffOp.setOldVersion(deleteCommit.getId())
                .setNewVersion(addCommit.getId()).call());

        final String path = NodeRef.appendChild(pointsName, points1.getIdentifier().getID());

        // then the diff should report an ADD instead of a DELETE
View Full Code Here

    @Test
    public void testSingleModification() throws Exception {

        final ObjectId oldOid = insertAndAdd(points1);
        final RevCommit insertCommit = geogig.command(CommitOp.class).setAll(true).call();

        final String featureId = points1.getIdentifier().getID();
        final Feature modifiedFeature = feature((SimpleFeatureType) points1.getType(), featureId,
                "changedProp", new Integer(1500), null);

        final ObjectId newOid = insertAndAdd(modifiedFeature);

        final RevCommit changeCommit = geogig.command(CommitOp.class).setAll(true).call();

        List<DiffEntry> difflist = toList(diffOp.setOldVersion(insertCommit.getId())
                .setNewVersion(changeCommit.getId()).call());

        assertNotNull(difflist);
        assertEquals(1, difflist.size());
        DiffEntry de = difflist.get(0);
        String expectedPath = NodeRef.appendChild(pointsName, featureId);
View Full Code Here

TOP

Related Classes of org.locationtech.geogig.api.RevCommit

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.