import com.hp.hpl.jena.vocabulary.RDFS;
public class ExampleTDB_04 {
public static void main(String[] args) {
FileManager fm = FileManager.get();
fm.addLocatorClassLoader(ExampleTDB_04.class.getClassLoader());
InputStream in = fm.open("data/data.nt");
DatasetGraphTDB dsg = TDBInternal.getBaseDatasetGraphTDB(TDBFactory.createDatasetGraph());
GraphListener listener = new MyListener();
dsg.getDefaultGraph().getEventManager().register(listener);
Iterator<Node> iter = dsg.listGraphNodes();
while ( iter.hasNext() ) {
Graph graph = dsg.getGraph(iter.next());
graph.getEventManager().register(listener);
}
// this does not send events to the GraphListener
TDBLoader.load(dsg, in, false);
// this does not uses the Graph SPI
dsg.add(new Quad(Quad.defaultGraphIRI, Node.createURI("x"), Node.createURI("y"), Node.createURI("z")));
// this does
Graph graph = dsg.getDefaultGraph();
graph.add(new Triple(Node.createURI("x"), Node.createURI("y"), Node.createURI("z")));
// this sends events to the GraphListener
Model model = ModelFactory.createModelForGraph(dsg.getDefaultGraph()) ;
model.add(ResourceFactory.createProperty("foo:x1"), RDFS.label, "X1");
// this does it too
in = fm.open("data/data.nt");
model.read(in, "", "N-TRIPLES");
dsg.close();
}