blob: 35c6cf79b563ef9404e172890e3ce23ef462ccf3 [file] [log] [blame]
package org.apache.commons.rdf.simple.io;
import org.apache.commons.rdf.api.Dataset;
import org.apache.commons.rdf.api.Quad;
import org.apache.commons.rdf.api.RDF;
import org.apache.commons.rdf.api.io.ParserTarget;
public class ImplicitDatasetTarget implements ParserTarget<Dataset> {
private final RDF rdf;
private Dataset target;
public ImplicitDatasetTarget(RDF rdf) {
this.rdf = rdf;
}
@Override
public Dataset dest() {
if (target == null) {
synchronized (this) {
// Make sure we only make it once
if (target == null) {
target = rdf.createDataset();
}
}
}
return target;
}
@Override
public void accept(Quad t) {
dest().add(t);
}
}