Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser$AddToModel.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser$AddToModel.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser$AddToModel.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>RDF4JParser.AddToModel</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.html" class="el_package">org.apache.commons.rdf.rdf4j.experimental</a> > <span class="el_class">RDF4JParser.AddToModel</span></div><h1>RDF4JParser.AddToModel</h1><table class="coverage" cellspacing="0" i d="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">19 of 19</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">3</td><td cl ass="ctr2">3</td><td class="ctr1">7</td><td class="ctr2">7</td><td class="ctr1">3</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a0"><a href="RDF4JParser.java.html#L100" class="el_method">handleNamespace(String, String)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="7" alt="7"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h1">2</td><td class="ctr2" id="i1">2</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a2"><a href="RDF4JParser.java.html#L89" class="el_method">RDF4JParser.AddToModel(Model)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="102" height="10" title="6" alt="6"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td> <td class="ctr1" id="h0">3</td><td class="ctr2" id="i0">3</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="RDF4JParser.java.html#L95" class="el_method">handleStatement(Statement)</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="102" height="10" title="6" alt="6"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">2</td><td class="ctr2" id="i2">2</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file
Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser$AddToQuadConsumer.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser$AddToQuadConsumer.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser$AddToQuadConsumer.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>RDF4JParser.AddToQuadConsumer</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.html" class="el_package">org.apache.commons.rdf.rdf4j.experimental</a> > <span class="el_class">RDF4JParser.AddToQuadConsumer</span></div><h1>RDF4JParser.AddToQuadConsumer</h1><table class="covera ge" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">18 of 18</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td clas s="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">5</td><td class="ctr2">5</td><td class="ctr1">2</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a1"><a href="RDF4JParser.java.html#L65" class="el_method">RDF4JParser.AddToQuadConsumer(RDF4JParser, Consumer)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="9" alt="9"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i0">3</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="RDF4JParser.java.html#L76" class="el_method">handleStatement(Statement)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="120" height="10" title="9" alt="9"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1" >1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">2</td><td >class="ctr2" id="i1">2</td><td class="ctr1" id="j1">1</td><td class="ctr2" >id="k1">1</td></tr></tbody></table><div class="footer"><span >class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> >0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>RDF4JParser</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.html" class="el_package">org.apache.commons.rdf.rdf4j.experimental</a> > <span class="el_class">RDF4JParser</span></div><h1>RDF4JParser</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">318 of 318</td><td class="ctr2">0%</td><td class="bar">28 of 28</td><td class="ctr2">0%</td><td class="ctr1">22</td><td class="ctr2">22</td><td class=" ctr1">51</td><td class="ctr2">51</td><td class="ctr1">8</td><td class="ctr2">8</td></tr></tfoot><tbody><tr><td id="a4"><a href="RDF4JParser.java.html#L124" class="el_method">parseSynchronusly()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="154" alt="154"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="90" height="10" title="12" alt="12"/></td><td class="ctr2" id="e0">0%</td><td class="ctr1" id="f1">7</td><td class="ctr2" id="g1">7</td><td class="ctr1" id="h1">20</td><td class="ctr2" id="i1">20</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="RDF4JParser.java.html#L198" class="el_method">makeRDFHandler()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="92" height="10" title="119" alt="119"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="120" height ="10" title="16" alt="16"/></td><td class="ctr2" id="e1">0%</td><td class="ctr1" id="f0">9</td><td class="ctr2" id="g0">9</td><td class="ctr1" id="h0">21</td><td class="ctr2" id="i0">21</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a5"><a href="RDF4JParser.java.html#L114" class="el_method">prepareForParsing()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="17" height="10" title="23" alt="23"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">4</td><td class="ctr2" id="i2">4</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a6"><a href="RDF4JParser.java.html#L60" class="el_method">RDF4JParser()</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="6" height="10" title="8" alt="8"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d 3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">2</td><td class="ctr2" id="i3">2</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a0"><a href="RDF4JParser.java.html#L109" class="el_method">createRDFTermFactory()</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="3" height="10" title="4" alt="4"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">1</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h5">1</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a7"><a href="RDF4JParser.java.html#L189" class="el_method">setParserConfig(ParserConfig)</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="3" height="10" title="4" alt="4"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d5"/><td clas s="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">1</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h4">2</td><td class="ctr2" id="i4">2</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a1"><a href="RDF4JParser.java.html#L179" class="el_method">getParserConfig()</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="2" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">1</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">1</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a2"><a href="RDF4JParser.java.html#L219" class="el_method">lambda$makeRDFHandler$0(int)</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="2" height="10" title="3" alt="3"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n /a</td><td class="ctr1" id="f7">1</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h7">1</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k7">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser.java.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser.java.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/RDF4JParser.java.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1,237 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>RDF4JParser.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.source.html" class="el_package">org.apache.commons.rdf.rdf4j.experimental</a> > <span class="el_source">RDF4JParser.java </span></div><h1>RDF4JParser.java</h1><pre class="source lang-java linenums">/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.commons.rdf.rdf4j.experimental; + +import java.io.IOException; +import java.io.InputStream; +import java.net.MalformedURLException; +import java.net.URL; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.Optional; +import java.util.function.Consumer; +import java.util.stream.Stream; + +import org.apache.commons.rdf.api.IRI; +import org.apache.commons.rdf.api.Quad; +import org.apache.commons.rdf.api.RDFSyntax; +import org.apache.commons.rdf.experimental.RDFParser; +import org.apache.commons.rdf.rdf4j.RDF4JBlankNodeOrIRI; +import org.apache.commons.rdf.rdf4j.RDF4JDataset; +import org.apache.commons.rdf.rdf4j.RDF4JGraph; +import org.apache.commons.rdf.rdf4j.RDF4J; +import org.apache.commons.rdf.simple.experimental.AbstractRDFParser; +import org.eclipse.rdf4j.model.Model; +import org.eclipse.rdf4j.model.Resource; +import org.eclipse.rdf4j.repository.util.RDFInserter; +import org.eclipse.rdf4j.repository.util.RDFLoader; +import org.eclipse.rdf4j.rio.ParserConfig; +import org.eclipse.rdf4j.rio.RDFFormat; +import org.eclipse.rdf4j.rio.RDFHandler; +import org.eclipse.rdf4j.rio.RDFHandlerException; +import org.eclipse.rdf4j.rio.Rio; +import org.eclipse.rdf4j.rio.helpers.AbstractRDFHandler; + +/** + * RDF4J-based parser. + * <p> + * This can handle the RDF syntaxes {@link RDFSyntax#JSONLD}, + * {@link RDFSyntax#NQUADS}, {@link RDFSyntax#NTRIPLES}, + * {@link RDFSyntax#RDFXML}, {@link RDFSyntax#TRIG} and {@link RDFSyntax#TURTLE} + * - additional syntaxes can be supported by including the corresponding + * <em>rdf4j-rio-*</em> module on the classpath. + * + */ +<span class="nc" id="L60">public class RDF4JParser extends AbstractRDFParser<RDF4JParser> implements RDFParser {</span> + + private final class AddToQuadConsumer extends AbstractRDFHandler { + private final Consumer<Quad> quadTarget; + +<span class="nc" id="L65"> private AddToQuadConsumer(Consumer<Quad> quadTarget) {</span> +<span class="nc" id="L66"> this.quadTarget = quadTarget;</span> +<span class="nc" id="L67"> }</span> + + public void handleStatement(org.eclipse.rdf4j.model.Statement st) + throws org.eclipse.rdf4j.rio.RDFHandlerException { + // TODO: if getRdfTermFactory() is a non-rdf4j factory, should + // we use factory.createQuad() instead? + // Unsure what is the promise of setting getRdfTermFactory() -- + // does it go all the way down to creating BlankNode, IRI and + // Literal? +<span class="nc" id="L76"> quadTarget.accept(rdf4jTermFactory.asQuad(st));</span> + // Performance note: + // Graph/Quad.add should pick up again our + // RDF4JGraphLike.asStatement() + // and avoid double conversion. + // Additionally the RDF4JQuad and RDF4JTriple implementations + // are lazily converting subj/obj/pred/graph.s +<span class="nc" id="L83"> }</span> + } + + private final static class AddToModel extends AbstractRDFHandler { + private final Model model; + +<span class="nc" id="L89"> public AddToModel(Model model) {</span> +<span class="nc" id="L90"> this.model = model;</span> +<span class="nc" id="L91"> }</span> + + public void handleStatement(org.eclipse.rdf4j.model.Statement st) + throws org.eclipse.rdf4j.rio.RDFHandlerException { +<span class="nc" id="L95"> model.add(st);</span> +<span class="nc" id="L96"> }</span> + + @Override + public void handleNamespace(String prefix, String uri) throws RDFHandlerException { +<span class="nc" id="L100"> model.setNamespace(prefix, uri);</span> +<span class="nc" id="L101"> }</span> + } + + private RDF4J rdf4jTermFactory; +<span class="nc" id="L105"> private ParserConfig parserConfig = new ParserConfig();</span> + + @Override + protected RDF4J createRDFTermFactory() { +<span class="nc" id="L109"> return new RDF4J();</span> + } + + @Override + protected RDF4JParser prepareForParsing() throws IOException, IllegalStateException { +<span class="nc" id="L114"> RDF4JParser c = super.prepareForParsing();</span> + // Ensure we have an RDF4J for conversion. + // We'll make a new one if user has provided a non-RDF4J factory +<span class="nc" id="L117"> c.rdf4jTermFactory = (RDF4J) getRdfTermFactory().filter(RDF4J.class::isInstance)</span> +<span class="nc" id="L118"> .orElseGet(c::createRDFTermFactory);</span> +<span class="nc" id="L119"> return c;</span> + } + + @Override + protected void parseSynchronusly() throws IOException { +<span class="nc" id="L124"> Optional<RDFFormat> formatByMimeType = getContentType().flatMap(Rio::getParserFormatForMIMEType);</span> +<span class="nc" id="L125"> String base = getBase().map(IRI::getIRIString).orElse(null);</span> + +<span class="nc" id="L127"> ParserConfig parserConfig = getParserConfig();</span> + // TODO: Should we need to set anything? +<span class="nc" id="L129"> RDFLoader loader = new RDFLoader(parserConfig, rdf4jTermFactory.getValueFactory());</span> +<span class="nc" id="L130"> RDFHandler rdfHandler = makeRDFHandler();</span> +<span class="nc bnc" id="L131" title="All 2 branches missed."> if (getSourceFile().isPresent()) {</span> + // NOTE: While we could have used + // loader.load(sourcePath.toFile() + // if the path fs provider == FileSystems.getDefault(), + // that RDFLoader method does not use absolute path + // as the base URI, so to be consistent + // we'll always do it with our own input stream + // + // That means we may have to guess format by extensions: +<span class="nc" id="L140"> Optional<RDFFormat> formatByFilename = getSourceFile().map(Path::getFileName).map(Path::toString)</span> +<span class="nc" id="L141"> .flatMap(Rio::getParserFormatForFileName);</span> + // TODO: for the excited.. what about the extension after following + // symlinks? + +<span class="nc" id="L145"> RDFFormat format = formatByMimeType.orElse(formatByFilename.orElse(null));</span> +<span class="nc" id="L146"> try (InputStream in = Files.newInputStream(getSourceFile().get())) {</span> +<span class="nc" id="L147"> loader.load(in, base, format, rdfHandler);</span> +<span class="nc bnc" id="L148" title="All 8 branches missed."> }</span> +<span class="nc bnc" id="L149" title="All 2 branches missed."> } else if (getSourceIri().isPresent()) {</span> + try { + // TODO: Handle international IRIs properly + // (Unicode support for for hostname, path and query) +<span class="nc" id="L153"> URL url = new URL(getSourceIri().get().getIRIString());</span> + // TODO: This probably does not support https:// -> http:// + // redirections +<span class="nc" id="L156"> loader.load(url, base, formatByMimeType.orElse(null), makeRDFHandler());</span> +<span class="nc" id="L157"> } catch (MalformedURLException ex) {</span> +<span class="nc" id="L158"> throw new IOException("Can't handle source URL: " + getSourceIri().get(), ex);</span> +<span class="nc" id="L159"> }</span> + } + // must be getSourceInputStream then, this is guaranteed by + // super.checkSource(); +<span class="nc" id="L163"> loader.load(getSourceInputStream().get(), base, formatByMimeType.orElse(null), rdfHandler);</span> +<span class="nc" id="L164"> }</span> + + /** + * Get the RDF4J {@link ParserConfig} to use. + * <p> + * If no parser config is set, the default configuration is provided. + * <p> + * <strong>Note:</strong> The parser config is mutable - changes in the + * returned config is reflected in this instance of the parser. To avoid + * mutation, create a new {@link ParserConfig} and set + * {@link #setParserConfig(ParserConfig)}. + * + * @return The RDF4J {@link ParserConfig} + */ + public ParserConfig getParserConfig() { +<span class="nc" id="L179"> return parserConfig;</span> + } + + /** + * Set an RDF4J {@link ParserConfig} to use + * + * @param parserConfig + * Parser configuration + */ + public void setParserConfig(ParserConfig parserConfig) { +<span class="nc" id="L189"> this.parserConfig = parserConfig;</span> +<span class="nc" id="L190"> }</span> + + protected RDFHandler makeRDFHandler() { + + // TODO: Can we join the below DF4JDataset and RDF4JGraph cases + // using RDF4JGraphLike<TripleLike<BlankNodeOrIRI,IRI,RDFTerm>> + // or will that need tricky generics types? + +<span class="nc bnc" id="L198" title="All 2 branches missed."> if (getTargetDataset().filter(RDF4JDataset.class::isInstance).isPresent()) {</span> + // One of us, we can add them as Statements directly +<span class="nc" id="L200"> RDF4JDataset dataset = (RDF4JDataset) getTargetDataset().get();</span> +<span class="nc bnc" id="L201" title="All 2 branches missed."> if (dataset.asRepository().isPresent()) {</span> +<span class="nc" id="L202"> return new RDFInserter(dataset.asRepository().get().getConnection());</span> + } +<span class="nc bnc" id="L204" title="All 2 branches missed."> if (dataset.asModel().isPresent()) {</span> +<span class="nc" id="L205"> Model model = dataset.asModel().get();</span> +<span class="nc" id="L206"> return new AddToModel(model);</span> + } + // Not backed by Repository or Model? + // Third-party RDF4JDataset subclass, so we'll fall through to the + // getTarget() handling further down +<span class="nc bnc" id="L211" title="All 2 branches missed."> } else if (getTargetGraph().filter(RDF4JGraph.class::isInstance).isPresent()) {</span> +<span class="nc" id="L212"> RDF4JGraph graph = (RDF4JGraph) getTargetGraph().get();</span> + +<span class="nc bnc" id="L214" title="All 2 branches missed."> if (graph.asRepository().isPresent()) {</span> +<span class="nc" id="L215"> RDFInserter inserter = new RDFInserter(graph.asRepository().get().getConnection());</span> +<span class="nc bnc" id="L216" title="All 2 branches missed."> if (!graph.getContextMask().isEmpty()) {</span> +<span class="nc" id="L217"> Stream<RDF4JBlankNodeOrIRI> b = graph.getContextMask().stream();</span> +<span class="nc" id="L218"> Stream<Resource> c = b.map(RDF4JBlankNodeOrIRI::asValue);</span> +<span class="nc" id="L219"> Resource[] contexts = c.toArray(Resource[]::new);</span> +<span class="nc" id="L220"> inserter.enforceContext(contexts);</span> + } +<span class="nc" id="L222"> return inserter;</span> + } +<span class="nc bnc" id="L224" title="All 4 branches missed."> if (graph.asModel().isPresent() && graph.getContextMask().isEmpty()) {</span> + // the model accepts any quad +<span class="nc" id="L226"> Model model = graph.asModel().get();</span> +<span class="nc" id="L227"> return new AddToModel(model);</span> + } + // else - fall through + } + + // Fall thorough: let target() consume our converted quads. +<span class="nc" id="L233"> return new AddToQuadConsumer(getTarget());</span> + } + +} +</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/index.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/index.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/index.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>org.apache.commons.rdf.rdf4j.experimental</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <span class="el_package">org.apache.commons.rdf.rdf4j.experimental</span></div><h1>org.apache.commons.rdf.rdf4j.experimenta l</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(t his)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">355 of 355</td><td class="ctr2">0%</td><td class="bar">28 of 28</td><td class="ctr2">0%</td><td class="ctr1">27</td><td class="ctr2">27</td><td class="ctr1">63</td><td class="ctr2">63</td><td class="ctr1">13</td><td class="ctr2">13</td><td class="ctr1">3</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a0"><a href="RDF4JParser.html" class="el_class">RDF4JParser</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="318" alt="318"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="120" height="10" title="28" alt="28"/></td><td class="ctr2" id="e0">0%</td><td class="ctr1" id="f0">22</td><td class="ctr2" id="g0">22</td><td class="ctr1" id="h0">51</td><td class="ctr2" id="i0">51</td><td class="ctr1" id="j0">8</td><td class="ctr2" id="k0">8</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr> <tr><td id="a1"><a href="RDF4JParser$AddToModel.html" class="el_class">RDF4JParser.AddToModel</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="7" height="10" title="19" alt="19"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">3</td><td class="ctr2" id="g1">3</td><td class="ctr1" id="h1">7</td><td class="ctr2" id="i1">7</td><td class="ctr1" id="j1">3</td><td class="ctr2" id="k1">3</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a2"><a href="RDF4JParser$AddToQuadConsumer.html" class="el_class">RDF4JParser.AddToQuadConsumer</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="6" height="10" title="18" alt="18"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">2</td><td class="ctr2" id="g2">2</td><td class="ctr1" id="h2">5</td><td class="ctr2" id="i2">5</td><td cl ass="ctr1" id="j2">2</td><td class="ctr2" id="k2">2</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/index.source.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/index.source.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.experimental/index.source.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>org.apache.commons.rdf.rdf4j.experimental</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <span class="el_package">org.apache.commons.rdf.rdf4j.experimental</span></div><h1>org.apache.commons.rdf.rdf4j.experimental</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes </td></tr></thead><tfoot><tr><td>Total</td><td class="bar">355 of 355</td><td class="ctr2">0%</td><td class="bar">28 of 28</td><td class="ctr2">0%</td><td class="ctr1">27</td><td class="ctr2">27</td><td class="ctr1">63</td><td class="ctr2">63</td><td class="ctr1">13</td><td class="ctr2">13</td><td class="ctr1">3</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a0"><a href="RDF4JParser.java.html" class="el_source">RDF4JParser.java</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="355" alt="355"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="120" height="10" title="28" alt="28"/></td><td class="ctr2" id="e0">0%</td><td class="ctr1" id="f0">27</td><td class="ctr2" id="g0">27</td><td class="ctr1" id="h0">63</td><td class="ctr2" id="i0">63</td><td class="ctr1" id="j0">13</td><td class="ctr2" id="k0">13</td><td class="ctr1" id="l0">3</td><td class="ctr2" id="m0">3</td></tr> </tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRDFTerm.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRDFTerm.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRDFTerm.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>AbstractRDFTerm</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_class">AbstractRDFTerm</span></div><h1>AbstractRDFTerm</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr> <td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 9</td><td class="ctr2">100%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">0</td><td class="ctr2">2</td><td class="c tr1">0</td><td class="ctr2">4</td><td class="ctr1">0</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="AbstractRDFTerm.java.html#L26" class="el_method">AbstractRDFTerm(Value)</a></td><td class="bar" id="b0"><img src="../.resources/greenbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">0</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i0">3</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="AbstractRDFTerm.java.html#L31" class="el_method">asValue()</a></td><td class="bar" id="b1"><img src="../.resources/greenbar.gif" width="60" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ct r2" id="i1">1</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRDFTerm.java.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRDFTerm.java.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRDFTerm.java.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>AbstractRDFTerm.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.source.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_source">AbstractRDFTerm.java </span></div><h1>AbstractRDFTerm.java</h1><pre class="source lang-java linenums">/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.commons.rdf.rdf4j.impl; + +import org.apache.commons.rdf.rdf4j.RDF4JTerm; +import org.eclipse.rdf4j.model.Value; + +abstract class AbstractRDFTerm<T extends Value> implements RDF4JTerm { + T value; + +<span class="fc" id="L26"> AbstractRDFTerm(T value) {</span> +<span class="fc" id="L27"> this.value = value;</span> +<span class="fc" id="L28"> }</span> + + public T asValue() { +<span class="fc" id="L31"> return value;</span> + } +} +</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRepositoryGraphLike.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRepositoryGraphLike.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRepositoryGraphLike.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>AbstractRepositoryGraphLike</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_class">AbstractRepositoryGraphLike</span></div><h1>AbstractRepositoryGraphLike</h1><table class="coverage" cellspacin g="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">13 of 47</td><td class="ctr2">72%</td><td class="bar">3 of 6</td><td class="ctr2">50%</td><td class="ctr1">5</t d><td class="ctr2">8</td><td class="ctr1">5</td><td class="ctr2">15</td><td class="ctr1">3</td><td class="ctr2">5</td></tr></tfoot><tbody><tr><td id="a3"><a href="AbstractRepositoryGraphLike.java.html#L53" class="el_method">close()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="28" height="10" title="7" alt="7"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="60" height="10" title="2" alt="2"/></td><td class="ctr2" id="e1">0%</td><td class="ctr1" id="f0">2</td><td class="ctr2" id="g1">2</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i1">3</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a2"><a href="AbstractRepositoryGraphLike.java.html#L67" class="el_method">asRepository()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="16" height="10" title="4" alt="4"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d2"/><td class="ctr2 " id="e2">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="AbstractRepositoryGraphLike.java.html#L72" class="el_method">asModel()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="8" height="10" title="2" alt="2"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a0"><a href="AbstractRepositoryGraphLike.java.html#L40" class="el_method">AbstractRepositoryGraphLike(Repository, UUID, boolean, boolean)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="120" height="10" title="30" alt="30"/></td><td class="ctr2" id="c0">10 0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="30" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="90" height="10" title="3" alt="3"/></td><td class="ctr2" id="e0">75%</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g0">3</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i0">9</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a4"><a href="AbstractRepositoryGraphLike.java.html#L63" class="el_method">getRepositoryConnection()</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="16" height="10" title="4" alt="4"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr></tbody></table><div class="footer"><span class="right">Created wit h <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRepositoryGraphLike.java.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRepositoryGraphLike.java.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/AbstractRepositoryGraphLike.java.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>AbstractRepositoryGraphLike.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.source.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_source">Abstract RepositoryGraphLike.java</span></div><h1>AbstractRepositoryGraphLike.java</h1><pre class="source lang-java linenums">/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.commons.rdf.rdf4j.impl; + +import java.util.Optional; +import java.util.UUID; + +import org.apache.commons.rdf.api.TripleLike; +import org.apache.commons.rdf.rdf4j.RDF4JGraphLike; +import org.apache.commons.rdf.rdf4j.RDF4J; +import org.eclipse.rdf4j.model.Model; +import org.eclipse.rdf4j.model.Statement; +import org.eclipse.rdf4j.repository.Repository; +import org.eclipse.rdf4j.repository.RepositoryConnection; + +abstract class AbstractRepositoryGraphLike<T extends TripleLike> implements RDF4JGraphLike<T> { + + protected final Repository repository; + protected final boolean includeInferred; + protected final boolean handleInitAndShutdown; + protected final RDF4J rdf4jTermFactory; + protected final UUID salt; + + AbstractRepositoryGraphLike(Repository repository, UUID salt, boolean handleInitAndShutdown, +<span class="fc" id="L40"> boolean includeInferred) {</span> +<span class="fc" id="L41"> this.repository = repository;</span> +<span class="fc" id="L42"> this.salt = salt;</span> +<span class="fc" id="L43"> this.includeInferred = includeInferred;</span> +<span class="fc" id="L44"> this.handleInitAndShutdown = handleInitAndShutdown;</span> +<span class="pc bpc" id="L45" title="1 of 4 branches missed."> if (handleInitAndShutdown && !repository.isInitialized()) {</span> +<span class="fc" id="L46"> repository.initialize();</span> + } +<span class="fc" id="L48"> rdf4jTermFactory = new RDF4J(repository.getValueFactory(), salt);</span> +<span class="fc" id="L49"> }</span> + + @Override + public void close() throws Exception { +<span class="nc bnc" id="L53" title="All 2 branches missed."> if (handleInitAndShutdown) {</span> +<span class="nc" id="L54"> repository.shutDown();</span> + } + // else: repository was initialized outside, so we should not shut it + // down +<span class="nc" id="L58"> }</span> + + protected abstract T asTripleLike(Statement s); + + protected RepositoryConnection getRepositoryConnection() { +<span class="fc" id="L63"> return repository.getConnection();</span> + } + + public Optional<Repository> asRepository() { +<span class="nc" id="L67"> return Optional.of(repository);</span> + } + + @Override + public Optional<Model> asModel() { +<span class="nc" id="L72"> return Optional.empty();</span> + } + +} +</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/BlankNodeImpl.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/BlankNodeImpl.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/BlankNodeImpl.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>BlankNodeImpl</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_class">BlankNodeImpl</span></div><h1>BlankNodeImpl</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td cl ass="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">21 of 149</td><td class="ctr2">86%</td><td class="bar">3 of 16</td><td class="ctr2">81%</td><td class="ctr1">4</td><td class="ctr2">15</td><td class="ctr 1">4</td><td class="ctr2">28</td><td class="ctr1">1</td><td class="ctr2">7</td></tr></tfoot><tbody><tr><td id="a5"><a href="BlankNodeImpl.java.html#L95" class="el_method">toString()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="52" height="10" title="15" alt="15"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="BlankNodeImpl.java.html#L64" class="el_method">isValidBlankNodeLabel(String)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="14" height="10" title="4" alt="4"/><img src="../.resources/greenbar.gif" width="88" height="10" title="25" alt="25"/></td><td class="ctr2" id="c5">86%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="30" height="10" ti tle="2" alt="2"/><img src="../.resources/greenbar.gif" width="90" height="10" title="6" alt="6"/></td><td class="ctr2" id="e2">75%</td><td class="ctr1" id="f0">2</td><td class="ctr2" id="g0">5</td><td class="ctr1" id="h0">2</td><td class="ctr2" id="i0">8</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="BlankNodeImpl.java.html#L42" class="el_method">equals(Object)</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="7" height="10" title="2" alt="2"/><img src="../.resources/greenbar.gif" width="60" height="10" title="17" alt="17"/></td><td class="ctr2" id="c4">89%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="15" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="45" height="10" title="3" alt="3"/></td><td class="ctr2" id="e3">75%</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g1">3</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i1">6</td><td class=" ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a4"><a href="BlankNodeImpl.java.html#L80" class="el_method">ntriplesString()</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="120" height="10" title="34" alt="34"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d2"><img src="../.resources/greenbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g2">2</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">3</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a6"><a href="BlankNodeImpl.java.html#L89" class="el_method">uniqueReference()</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="84" height="10" title="24" alt="24"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g5">1</td>< td class="ctr1" id="h4">0</td><td class="ctr2" id="i5">2</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a0"><a href="BlankNodeImpl.java.html#L30" class="el_method">BlankNodeImpl(BNode, UUID)</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="52" height="10" title="15" alt="15"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i2">5</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a2"><a href="BlankNodeImpl.java.html#L56" class="el_method">hashCode()</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="45" height="10" title="13" alt="13"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d3"><img src="../.resources/greenbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e1 ">100%</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g3">2</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i4">3</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/BlankNodeImpl.java.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/BlankNodeImpl.java.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/BlankNodeImpl.java.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1,98 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>BlankNodeImpl.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.source.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_source">BlankNodeImpl.java</sp an></div><h1>BlankNodeImpl.java</h1><pre class="source lang-java linenums">/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.commons.rdf.rdf4j.impl; + +import java.nio.charset.StandardCharsets; +import java.util.UUID; + +import org.apache.commons.rdf.api.BlankNode; +import org.apache.commons.rdf.rdf4j.RDF4JBlankNode; +import org.eclipse.rdf4j.model.BNode; +import org.eclipse.rdf4j.rio.turtle.TurtleUtil; + +final class BlankNodeImpl extends AbstractRDFTerm<BNode> implements RDF4JBlankNode { + +<span class="fc" id="L30"> private transient int hashCode = 0;</span> + private long saltUUIDleast; + private long saltUUIDmost; + + BlankNodeImpl(BNode bNode, UUID salt) { +<span class="fc" id="L35"> super(bNode);</span> + // Space-efficient storage of salt UUID +<span class="fc" id="L37"> saltUUIDmost = salt.getMostSignificantBits();</span> +<span class="fc" id="L38"> saltUUIDleast = salt.getLeastSignificantBits();</span> +<span class="fc" id="L39"> }</span> + + public boolean equals(Object obj) { +<span class="fc bfc" id="L42" title="All 2 branches covered."> if (obj == this) {</span> +<span class="fc" id="L43"> return true;</span> + } + // NOTE: Do NOT use Bnode.equals() as it has a more generous + // equality based only on the value.getID(); +<span class="pc bpc" id="L47" title="1 of 2 branches missed."> if (obj instanceof BlankNode) {</span> +<span class="fc" id="L48"> BlankNode blankNode = (BlankNode) obj;</span> +<span class="fc" id="L49"> return uniqueReference().equals(blankNode.uniqueReference());</span> + } +<span class="nc" id="L51"> return false;</span> + } + + @Override + public int hashCode() { +<span class="fc bfc" id="L56" title="All 2 branches covered."> if (hashCode != 0) {</span> +<span class="fc" id="L57"> return hashCode;</span> + } +<span class="fc" id="L59"> return hashCode = uniqueReference().hashCode();</span> + } + + private boolean isValidBlankNodeLabel(String id) { + // FIXME: Replace with a regular expression? +<span class="pc bpc" id="L64" title="1 of 2 branches missed."> if (id.isEmpty()) {</span> +<span class="nc" id="L65"> return false;</span> + } +<span class="pc bpc" id="L67" title="1 of 2 branches missed."> if (!TurtleUtil.isBLANK_NODE_LABEL_StartChar(id.codePointAt(0))) {</span> +<span class="nc" id="L68"> return false;</span> + } +<span class="fc bfc" id="L70" title="All 2 branches covered."> for (int i = 1; i < id.length(); i++) {</span> +<span class="fc bfc" id="L71" title="All 2 branches covered."> if (!TurtleUtil.isBLANK_NODE_LABEL_Char(id.codePointAt(i))) {</span> +<span class="fc" id="L72"> return false;</span> + } + } +<span class="fc" id="L75"> return true;</span> + } + + @Override + public String ntriplesString() { +<span class="fc bfc" id="L80" title="All 2 branches covered."> if (isValidBlankNodeLabel(value.getID())) {</span> +<span class="fc" id="L81"> return "_:" + value.getID();</span> + } else { +<span class="fc" id="L83"> return "_:" + UUID.nameUUIDFromBytes(value.getID().getBytes(StandardCharsets.UTF_8));</span> + } + } + + @Override + public String uniqueReference() { +<span class="fc" id="L89"> UUID uuid = new UUID(saltUUIDmost, saltUUIDleast);</span> +<span class="fc" id="L90"> return "urn:uuid:" + uuid + "#" + value.getID();</span> + } + + @Override + public String toString() { +<span class="nc" id="L95"> return ntriplesString() + " [" + uniqueReference() + "]";</span> + } +} +</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/ConvertedStatements$ConvertedIterator.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/ConvertedStatements$ConvertedIterator.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/ConvertedStatements$ConvertedIterator.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>ConvertedStatements.ConvertedIterator</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_class">ConvertedStatements.ConvertedIterator</span></div><h1>ConvertedStatements.ConvertedIterator</h1><tab le class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 27</td><td class="ctr2">100%</td><td class="bar">0 of 2</td><td class="ctr2" >100%</td><td class="ctr1">0</td><td class="ctr2">4</td><td >class="ctr1">0</td><td class="ctr2">6</td><td class="ctr1">0</td><td >class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a1"><a >href="ConvertedStatements.java.html#L58" >class="el_method">hasNext()</a></td><td class="bar" id="b0"><img >src="../.resources/greenbar.gif" width="120" height="10" title="12" >alt="12"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"><img >src="../.resources/greenbar.gif" width="120" height="10" title="2" >alt="2"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" >id="f0">0</td><td class="ctr2" id="g0">2</td><td class="ctr1" >id="h0">0</td><td class="ctr2" id="i0">4</td><td class="ctr1" >id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a2"><a >href="ConvertedStatements.java.html#L67" class="el_method">next()</a></td><td >class="bar" id="b1"><img src="../.resources/greenbar.gif" width="90" >height="10" title="9" alt="9"/></td><td class="ctr2" id="c1">100%</td><td >class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="ConvertedStatements.java.html#L55" class="el_method">ConvertedStatements.ConvertedIterator(ConvertedStatements)</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="60" height="10" title="6" alt="6"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/ConvertedStatements.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/ConvertedStatements.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/ConvertedStatements.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>ConvertedStatements</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_class">ConvertedStatements</span></div><h1>ConvertedStatements</h1><table class="coverage" cellspacing="0" id="coveragetable" ><thead><tr><td class="sortable" id="a" >onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" >onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" >id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" >onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" >id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" >onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" >onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" >onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" >onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" >onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" >onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td > class="bar">0 of 33</td><td class="ctr2">100%</td><td class="bar">0 of >0</td><td class="ctr2">n/a</td><td class="ctr1">0</td><td class="ctr2">3</td ><td class="ctr1">0</td><td class="ctr2">9</td><td class="ctr1">0</td><td >class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a1"><a >href="ConvertedStatements.java.html#L38" >class="el_method">ConvertedStatements(Supplier, Function, Resource, IRI, >Value, Resource[])</a></td><td class="bar" id="b0"><img >src="../.resources/greenbar.gif" width="120" height="10" title="20" >alt="20"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"/><td >class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">0</td><td class="ctr2" >id="g0">1</td><td class="ctr1" id="h0">0</td><td class="ctr2" >id="i0">5</td><td class="ctr1" id="j0">0</td><td class="ctr2" >id="k0">1</td></tr><tr><td id="a0"><a >href="ConvertedStatements.java.html#L51" >class="el_method">close()</a></td><td class="bar" id="b1"><img >src="../.resources/greenbar.gif" width="42" height="10" title="7" >alt="7"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"/><td >class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">3</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a2"><a href="ConvertedStatements.java.html#L46" class="el_method">iterator()</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="36" height="10" title="6" alt="6"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/ConvertedStatements.java.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/ConvertedStatements.java.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/ConvertedStatements.java.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1,72 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>ConvertedStatements.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.source.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_source">ConvertedStateme nts.java</span></div><h1>ConvertedStatements.java</h1><pre class="source lang-java linenums">/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.commons.rdf.rdf4j.impl; + +import java.util.Iterator; +import java.util.function.Function; +import java.util.function.Supplier; + +import org.apache.commons.rdf.rdf4j.ClosableIterable; +import org.eclipse.rdf4j.model.Resource; +import org.eclipse.rdf4j.model.Statement; +import org.eclipse.rdf4j.model.Value; +import org.eclipse.rdf4j.repository.RepositoryConnection; +import org.eclipse.rdf4j.repository.RepositoryResult; + +final class ConvertedStatements<T> implements ClosableIterable<T> { + + private RepositoryConnection conn; + private RepositoryResult<Statement> results; + private Function<Statement, T> statementAdapter; + + ConvertedStatements(Supplier<RepositoryConnection> repositoryConnector, Function<Statement, T> statementAdapter, +<span class="fc" id="L38"> Resource subj, org.eclipse.rdf4j.model.IRI pred, Value obj, Resource... contexts) {</span> +<span class="fc" id="L39"> this.statementAdapter = statementAdapter;</span> +<span class="fc" id="L40"> this.conn = repositoryConnector.get();</span> +<span class="fc" id="L41"> this.results = conn.getStatements(subj, pred, obj, contexts);</span> +<span class="fc" id="L42"> }</span> + + @Override + public Iterator<T> iterator() { +<span class="fc" id="L46"> return new ConvertedIterator();</span> + } + + @Override + public void close() { +<span class="fc" id="L51"> results.close();</span> +<span class="fc" id="L52"> conn.close();</span> +<span class="fc" id="L53"> }</span> + +<span class="fc" id="L55"> private final class ConvertedIterator implements Iterator<T> {</span> + @Override + public boolean hasNext() { +<span class="fc" id="L58"> boolean hasNext = results.hasNext();</span> +<span class="fc bfc" id="L59" title="All 2 branches covered."> if (!hasNext) {</span> +<span class="fc" id="L60"> close();</span> + } +<span class="fc" id="L62"> return hasNext;</span> + } + + @Override + public T next() { +<span class="fc" id="L67"> return statementAdapter.apply(results.next());</span> + } + } + +} +</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file Added: websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/IRIImpl.html ============================================================================== --- websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/IRIImpl.html (added) +++ websites/production/commonsrdf/content/jacoco/org.apache.commons.rdf.rdf4j.impl/IRIImpl.html Wed Nov 16 11:00:15 2016 @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>IRIImpl</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">Commons RDF impl: RDF4j</a> > <a href="index.html" class="el_package">org.apache.commons.rdf.rdf4j.impl</a> > <span class="el_class">IRIImpl</span></div><h1>IRIImpl</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id= "a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">18 of 67</td><td class="ctr2">73%</td><td class="bar">4 of 6</td><td class="ctr2">33%</td><td class="ctr1">3</td><td class="ctr2">9</td><td class="ctr1">5</td><td class="c tr2">15</td><td class="ctr1">0</td><td class="ctr2">6</td></tr></tfoot><tbody><tr><td id="a0"><a href="IRIImpl.java.html#L30" class="el_method">equals(Object)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="63" height="10" title="18" alt="18"/><img src="../.resources/greenbar.gif" width="56" height="10" title="16" alt="16"/></td><td class="ctr2" id="c5">47%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="80" height="10" title="4" alt="4"/><img src="../.resources/greenbar.gif" width="40" height="10" title="2" alt="2"/></td><td class="ctr2" id="e0">33%</td><td class="ctr1" id="f0">3</td><td class="ctr2" id="g0">4</td><td class="ctr1" id="h0">5</td><td class="ctr2" id="i0">9</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a4"><a href="IRIImpl.java.html#L56" class="el_method">ntriplesString()</a></td><td class="bar" id="b1"><img src="../.resources/greenbar.gif" width="49" height="10" title="14" alt="14" /></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="IRIImpl.java.html#L46" class="el_method">getIRIString()</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="17" height="10" title="5" alt="5"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a2"><a href="IRIImpl.java.html#L51" class="el_method">hashCode()</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="17" height="10" title="5" alt="5"/></td><td class="ctr2" id="c2">100%</t d><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a5"><a href="IRIImpl.java.html#L61" class="el_method">toString()</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="17" height="10" title="5" alt="5"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a3"><a href="IRIImpl.java.html#L25" class="el_method">IRIImpl(IRI)</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="14" height="10" title="4" alt="4"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d5"/><td class="ctr 2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i1">2</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html> \ No newline at end of file