All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.aksw.jena_sparql_api.utils.SetDatasetGraph Maven / Gradle / Ivy

There is a newer version: 3.17.0-1
Show newest version
package org.aksw.jena_sparql_api.utils;

import java.util.AbstractSet;
import java.util.Iterator;

import org.apache.jena.graph.Node;
import org.apache.jena.sparql.core.DatasetGraph;
import org.apache.jena.sparql.core.Quad;

public class SetDatasetGraph
    extends AbstractSet
{
    private DatasetGraph graph;

    public SetDatasetGraph(DatasetGraph graph) {
        this.graph = graph;
    }

    @Override
    public boolean add(Quad quad) {
    	boolean result = contains(quad);
    	graph.add(quad);
    	return result;
    }

    @Override
    public boolean contains(Object item) {
    	boolean result = item instanceof Quad
    			? graph.contains((Quad)item)
    			: false;

    	return result;
    }

    @Override
    public Iterator iterator() {
        Iterator result = graph.find(Node.ANY, Node.ANY, Node.ANY, Node.ANY);
        return result;
    }

    @Override
    public int size() {
        int result = (int)graph.size();
        return result;
    }

    public static SetDatasetGraph wrap(DatasetGraph graph) {
        SetDatasetGraph result = new SetDatasetGraph(graph);
        return result;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy