Added: any23/site/xref/org/apache/any23/extractor/rdf/JSONLDJavaSink.html URL: http://svn.apache.org/viewvc/any23/site/xref/org/apache/any23/extractor/rdf/JSONLDJavaSink.html?rev=1893241&view=auto ============================================================================== --- any23/site/xref/org/apache/any23/extractor/rdf/JSONLDJavaSink.html (added) +++ any23/site/xref/org/apache/any23/extractor/rdf/JSONLDJavaSink.html Sat Sep 11 04:45:48 2021 @@ -0,0 +1,128 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<head><meta http-equiv="content-type" content="text/html; charset=UTF-8" /> +<title>JSONLDJavaSink xref</title> +<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" /> +</head> +<body> +<div id="overview"><a href="../../../../../../apidocs/org/apache/any23/extractor/rdf/JSONLDJavaSink.html">View Javadoc</a></div><pre> +<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em class="jxr_comment">/*</em> +<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</em> +<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em class="jxr_comment"> * contributor license agreements. See the NOTICE file distributed with</em> +<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em class="jxr_comment"> * this work for additional information regarding copyright ownership.</em> +<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em class="jxr_comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</em> +<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em class="jxr_comment"> * (the "License"); you may not use this file except in compliance with</em> +<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em class="jxr_comment"> * the License. You may obtain a copy of the License at</em> +<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em class="jxr_comment"> *</em> +<a class="jxr_linenumber" name="L9" href="#L9">9</a> <em class="jxr_comment"> * <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em> +<a class="jxr_linenumber" name="L10" href="#L10">10</a> <em class="jxr_comment"> *</em> +<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing, software</em> +<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em class="jxr_comment"> * distributed under the License is distributed on an "AS IS" BASIS,</em> +<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em> +<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em class="jxr_comment"> * See the License for the specific language governing permissions and</em> +<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em class="jxr_comment"> * limitations under the License.</em> +<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em class="jxr_comment"> */</em> +<a class="jxr_linenumber" name="L17" href="#L17">17</a> +<a class="jxr_linenumber" name="L18" href="#L18">18</a> <strong class="jxr_keyword">package</strong> org.apache.any23.extractor.rdf; +<a class="jxr_linenumber" name="L19" href="#L19">19</a> +<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong class="jxr_keyword">import</strong> java.util.Map.Entry; +<a class="jxr_linenumber" name="L21" href="#L21">21</a> <strong class="jxr_keyword">import</strong> java.util.UUID; +<a class="jxr_linenumber" name="L22" href="#L22">22</a> +<a class="jxr_linenumber" name="L23" href="#L23">23</a> <strong class="jxr_keyword">import</strong> org.apache.any23.extractor.ExtractionResult; +<a class="jxr_linenumber" name="L24" href="#L24">24</a> <strong class="jxr_keyword">import</strong> org.eclipse.rdf4j.model.IRI; +<a class="jxr_linenumber" name="L25" href="#L25">25</a> <strong class="jxr_keyword">import</strong> org.eclipse.rdf4j.model.Resource; +<a class="jxr_linenumber" name="L26" href="#L26">26</a> <strong class="jxr_keyword">import</strong> org.eclipse.rdf4j.model.Value; +<a class="jxr_linenumber" name="L27" href="#L27">27</a> <strong class="jxr_keyword">import</strong> org.eclipse.rdf4j.model.ValueFactory; +<a class="jxr_linenumber" name="L28" href="#L28">28</a> <strong class="jxr_keyword">import</strong> com.github.jsonldjava.core.JsonLdConsts; +<a class="jxr_linenumber" name="L29" href="#L29">29</a> <strong class="jxr_keyword">import</strong> com.github.jsonldjava.core.JsonLdTripleCallback; +<a class="jxr_linenumber" name="L30" href="#L30">30</a> <strong class="jxr_keyword">import</strong> com.github.jsonldjava.core.RDFDataset; +<a class="jxr_linenumber" name="L31" href="#L31">31</a> +<a class="jxr_linenumber" name="L32" href="#L32">32</a> <em class="jxr_javadoccomment">/**</em> +<a class="jxr_linenumber" name="L33" href="#L33">33</a> <em class="jxr_javadoccomment"> * @author Hans Brende ([email protected])</em> +<a class="jxr_linenumber" name="L34" href="#L34">34</a> <em class="jxr_javadoccomment"> */</em> +<a class="jxr_linenumber" name="L35" href="#L35">35</a> <strong class="jxr_keyword">class</strong> <a name="JSONLDJavaSink" href="../../../../../org/apache/any23/extractor/rdf/JSONLDJavaSink.html#JSONLDJavaSink">JSONLDJavaSink</a> <strong class="jxr_keyword">implements</strong> JsonLdTripleCallback { +<a class="jxr_linenumber" name="L36" href="#L36">36</a> +<a class="jxr_linenumber" name="L37" href="#L37">37</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String BNODE_PREFIX = JsonLdConsts.BLANK_NODE_PREFIX; +<a class="jxr_linenumber" name="L38" href="#L38">38</a> +<a class="jxr_linenumber" name="L39" href="#L39">39</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <a name="ExtractionResult" href="../../../../../org/apache/any23/extractor/ExtractionResult.html#ExtractionResult">ExtractionResult</a> handler; +<a class="jxr_linenumber" name="L40" href="#L40">40</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> ValueFactory valueFactory; +<a class="jxr_linenumber" name="L41" href="#L41">41</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String bNodeUniquifier; +<a class="jxr_linenumber" name="L42" href="#L42">42</a> +<a class="jxr_linenumber" name="L43" href="#L43">43</a> <a name="JSONLDJavaSink" href="../../../../../org/apache/any23/extractor/rdf/JSONLDJavaSink.html#JSONLDJavaSink">JSONLDJavaSink</a>(<a name="ExtractionResult" href="../../../../../org/apache/any23/extractor/ExtractionResult.html#ExtractionResult">ExtractionResult</a> handler, ValueFactory valueFactory) { +<a class="jxr_linenumber" name="L44" href="#L44">44</a> <strong class="jxr_keyword">this</strong>.handler = handler; +<a class="jxr_linenumber" name="L45" href="#L45">45</a> <strong class="jxr_keyword">this</strong>.valueFactory = valueFactory; +<a class="jxr_linenumber" name="L46" href="#L46">46</a> <strong class="jxr_keyword">this</strong>.bNodeUniquifier = <span class="jxr_string">"n"</span> + UUID.randomUUID().toString().replace(<span class="jxr_string">"-"</span>, <span class="jxr_string">""</span>) + <span class="jxr_string">"x"</span>; +<a class="jxr_linenumber" name="L47" href="#L47">47</a> } +<a class="jxr_linenumber" name="L48" href="#L48">48</a> +<a class="jxr_linenumber" name="L49" href="#L49">49</a> <strong class="jxr_keyword">private</strong> Resource createResource(RDFDataset.Node resource) { +<a class="jxr_linenumber" name="L50" href="#L50">50</a> String value = resource == <strong class="jxr_keyword">null</strong> ? <strong class="jxr_keyword">null</strong> : resource.getValue(); +<a class="jxr_linenumber" name="L51" href="#L51">51</a> <strong class="jxr_keyword">if</strong> (value != <strong class="jxr_keyword">null</strong> && value.startsWith(BNODE_PREFIX)) { +<a class="jxr_linenumber" name="L52" href="#L52">52</a> String bNodeId = value.substring(BNODE_PREFIX.length()); +<a class="jxr_linenumber" name="L53" href="#L53">53</a> +<a class="jxr_linenumber" name="L54" href="#L54">54</a> <strong class="jxr_keyword">if</strong> (bNodeId.length() < 32) { <em class="jxr_comment">// not globally unique; will collide with other blank node ids</em> +<a class="jxr_linenumber" name="L55" href="#L55">55</a> <strong class="jxr_keyword">if</strong> (bNodeId.isEmpty()) { +<a class="jxr_linenumber" name="L56" href="#L56">56</a> bNodeId = Integer.toHexString(System.identityHashCode(resource)); +<a class="jxr_linenumber" name="L57" href="#L57">57</a> } +<a class="jxr_linenumber" name="L58" href="#L58">58</a> bNodeId = bNodeUniquifier + bNodeId; +<a class="jxr_linenumber" name="L59" href="#L59">59</a> } +<a class="jxr_linenumber" name="L60" href="#L60">60</a> +<a class="jxr_linenumber" name="L61" href="#L61">61</a> <strong class="jxr_keyword">return</strong> valueFactory.createBNode(bNodeId); +<a class="jxr_linenumber" name="L62" href="#L62">62</a> } +<a class="jxr_linenumber" name="L63" href="#L63">63</a> <strong class="jxr_keyword">return</strong> valueFactory.createIRI(value); +<a class="jxr_linenumber" name="L64" href="#L64">64</a> } +<a class="jxr_linenumber" name="L65" href="#L65">65</a> +<a class="jxr_linenumber" name="L66" href="#L66">66</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> writeQuad(RDFDataset.Node sNode, RDFDataset.Node pNode, Value o, String graphName) { +<a class="jxr_linenumber" name="L67" href="#L67">67</a> <strong class="jxr_keyword">if</strong> (graphName != <strong class="jxr_keyword">null</strong> && graphName.startsWith(BNODE_PREFIX)) { +<a class="jxr_linenumber" name="L68" href="#L68">68</a> <em class="jxr_comment">// TODO support blank node graph names in Any23</em> +<a class="jxr_linenumber" name="L69" href="#L69">69</a> <strong class="jxr_keyword">return</strong>; +<a class="jxr_linenumber" name="L70" href="#L70">70</a> } +<a class="jxr_linenumber" name="L71" href="#L71">71</a> Resource s = createResource(sNode); +<a class="jxr_linenumber" name="L72" href="#L72">72</a> IRI p = valueFactory.createIRI(pNode == <strong class="jxr_keyword">null</strong> ? <strong class="jxr_keyword">null</strong> : pNode.getValue()); +<a class="jxr_linenumber" name="L73" href="#L73">73</a> <strong class="jxr_keyword">if</strong> (s == <strong class="jxr_keyword">null</strong> || p == <strong class="jxr_keyword">null</strong> || o == <strong class="jxr_keyword">null</strong>) { +<a class="jxr_linenumber" name="L74" href="#L74">74</a> <strong class="jxr_keyword">return</strong>; +<a class="jxr_linenumber" name="L75" href="#L75">75</a> } +<a class="jxr_linenumber" name="L76" href="#L76">76</a> <strong class="jxr_keyword">if</strong> (graphName == <strong class="jxr_keyword">null</strong> || graphName.isEmpty() || JsonLdConsts.DEFAULT.equalsIgnoreCase(graphName)) { +<a class="jxr_linenumber" name="L77" href="#L77">77</a> handler.writeTriple(s, p, o); +<a class="jxr_linenumber" name="L78" href="#L78">78</a> } <strong class="jxr_keyword">else</strong> { +<a class="jxr_linenumber" name="L79" href="#L79">79</a> handler.writeTriple(s, p, o, valueFactory.createIRI(graphName)); +<a class="jxr_linenumber" name="L80" href="#L80">80</a> } +<a class="jxr_linenumber" name="L81" href="#L81">81</a> } +<a class="jxr_linenumber" name="L82" href="#L82">82</a> +<a class="jxr_linenumber" name="L83" href="#L83">83</a> @Override +<a class="jxr_linenumber" name="L84" href="#L84">84</a> <strong class="jxr_keyword">public</strong> Object call(<strong class="jxr_keyword">final</strong> RDFDataset dataset) { +<a class="jxr_linenumber" name="L85" href="#L85">85</a> <strong class="jxr_keyword">for</strong> (Entry<String, String> nextNamespace : dataset.getNamespaces().entrySet()) { +<a class="jxr_linenumber" name="L86" href="#L86">86</a> handler.writeNamespace(nextNamespace.getKey(), nextNamespace.getValue()); +<a class="jxr_linenumber" name="L87" href="#L87">87</a> } +<a class="jxr_linenumber" name="L88" href="#L88">88</a> <strong class="jxr_keyword">for</strong> (String graphName : dataset.keySet()) { +<a class="jxr_linenumber" name="L89" href="#L89">89</a> <strong class="jxr_keyword">for</strong> (RDFDataset.Quad quad : dataset.getQuads(graphName)) { +<a class="jxr_linenumber" name="L90" href="#L90">90</a> RDFDataset.Node s = quad.getSubject(); +<a class="jxr_linenumber" name="L91" href="#L91">91</a> RDFDataset.Node p = quad.getPredicate(); +<a class="jxr_linenumber" name="L92" href="#L92">92</a> RDFDataset.Node o = quad.getObject(); +<a class="jxr_linenumber" name="L93" href="#L93">93</a> <strong class="jxr_keyword">if</strong> (o == <strong class="jxr_keyword">null</strong> || !o.isLiteral()) { +<a class="jxr_linenumber" name="L94" href="#L94">94</a> writeQuad(s, p, createResource(o), graphName); +<a class="jxr_linenumber" name="L95" href="#L95">95</a> } <strong class="jxr_keyword">else</strong> { +<a class="jxr_linenumber" name="L96" href="#L96">96</a> String lang = o.getLanguage(); +<a class="jxr_linenumber" name="L97" href="#L97">97</a> String datatype = o.getDatatype(); +<a class="jxr_linenumber" name="L98" href="#L98">98</a> String literal = o.getValue(); +<a class="jxr_linenumber" name="L99" href="#L99">99</a> <strong class="jxr_keyword">if</strong> (lang != <strong class="jxr_keyword">null</strong> && !lang.isEmpty() +<a class="jxr_linenumber" name="L100" href="#L100">100</a> && (datatype == <strong class="jxr_keyword">null</strong> || datatype.indexOf(':') < 0 +<a class="jxr_linenumber" name="L101" href="#L101">101</a> || JsonLdConsts.RDF_LANGSTRING.equalsIgnoreCase(datatype) +<a class="jxr_linenumber" name="L102" href="#L102">102</a> || JsonLdConsts.XSD_STRING.equalsIgnoreCase(datatype))) { +<a class="jxr_linenumber" name="L103" href="#L103">103</a> writeQuad(s, p, valueFactory.createLiteral(literal, lang), graphName); +<a class="jxr_linenumber" name="L104" href="#L104">104</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (datatype != <strong class="jxr_keyword">null</strong> && !datatype.isEmpty()) { +<a class="jxr_linenumber" name="L105" href="#L105">105</a> writeQuad(s, p, valueFactory.createLiteral(literal, valueFactory.createIRI(datatype)), +<a class="jxr_linenumber" name="L106" href="#L106">106</a> graphName); +<a class="jxr_linenumber" name="L107" href="#L107">107</a> } <strong class="jxr_keyword">else</strong> { +<a class="jxr_linenumber" name="L108" href="#L108">108</a> writeQuad(s, p, valueFactory.createLiteral(literal), graphName); +<a class="jxr_linenumber" name="L109" href="#L109">109</a> } +<a class="jxr_linenumber" name="L110" href="#L110">110</a> } +<a class="jxr_linenumber" name="L111" href="#L111">111</a> } +<a class="jxr_linenumber" name="L112" href="#L112">112</a> } +<a class="jxr_linenumber" name="L113" href="#L113">113</a> <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>; +<a class="jxr_linenumber" name="L114" href="#L114">114</a> } +<a class="jxr_linenumber" name="L115" href="#L115">115</a> } +</pre> +<hr/> +<div id="footer">Copyright © 2010–2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</div> +</body> +</html>
Added: any23/site/xref/org/apache/any23/extractor/rdfa/BaseRDFaExtractor.html URL: http://svn.apache.org/viewvc/any23/site/xref/org/apache/any23/extractor/rdfa/BaseRDFaExtractor.html?rev=1893241&view=auto ============================================================================== --- any23/site/xref/org/apache/any23/extractor/rdfa/BaseRDFaExtractor.html (added) +++ any23/site/xref/org/apache/any23/extractor/rdfa/BaseRDFaExtractor.html Sat Sep 11 04:45:48 2021 @@ -0,0 +1,108 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<head><meta http-equiv="content-type" content="text/html; charset=UTF-8" /> +<title>BaseRDFaExtractor xref</title> +<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" /> +</head> +<body> +<div id="overview"><a href="../../../../../../apidocs/org/apache/any23/extractor/rdfa/BaseRDFaExtractor.html">View Javadoc</a></div><pre> +<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em class="jxr_comment">/*</em> +<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</em> +<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em class="jxr_comment"> * contributor license agreements. See the NOTICE file distributed with</em> +<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em class="jxr_comment"> * this work for additional information regarding copyright ownership.</em> +<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em class="jxr_comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</em> +<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em class="jxr_comment"> * (the "License"); you may not use this file except in compliance with</em> +<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em class="jxr_comment"> * the License. You may obtain a copy of the License at</em> +<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em class="jxr_comment"> *</em> +<a class="jxr_linenumber" name="L9" href="#L9">9</a> <em class="jxr_comment"> * <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em> +<a class="jxr_linenumber" name="L10" href="#L10">10</a> <em class="jxr_comment"> *</em> +<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing, software</em> +<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em class="jxr_comment"> * distributed under the License is distributed on an "AS IS" BASIS,</em> +<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em> +<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em class="jxr_comment"> * See the License for the specific language governing permissions and</em> +<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em class="jxr_comment"> * limitations under the License.</em> +<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em class="jxr_comment"> */</em> +<a class="jxr_linenumber" name="L17" href="#L17">17</a> +<a class="jxr_linenumber" name="L18" href="#L18">18</a> <strong class="jxr_keyword">package</strong> org.apache.any23.extractor.rdfa; +<a class="jxr_linenumber" name="L19" href="#L19">19</a> +<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong class="jxr_keyword">import</strong> org.apache.any23.extractor.ExtractionContext; +<a class="jxr_linenumber" name="L21" href="#L21">21</a> <strong class="jxr_keyword">import</strong> org.apache.any23.extractor.ExtractionException; +<a class="jxr_linenumber" name="L22" href="#L22">22</a> <strong class="jxr_keyword">import</strong> org.apache.any23.extractor.ExtractionParameters; +<a class="jxr_linenumber" name="L23" href="#L23">23</a> <strong class="jxr_keyword">import</strong> org.apache.any23.extractor.ExtractionResult; +<a class="jxr_linenumber" name="L24" href="#L24">24</a> <strong class="jxr_keyword">import</strong> org.apache.any23.extractor.IssueReport; +<a class="jxr_linenumber" name="L25" href="#L25">25</a> <strong class="jxr_keyword">import</strong> org.apache.any23.extractor.rdf.BaseRDFExtractor; +<a class="jxr_linenumber" name="L26" href="#L26">26</a> <strong class="jxr_keyword">import</strong> org.apache.any23.rdf.Any23ValueFactoryWrapper; +<a class="jxr_linenumber" name="L27" href="#L27">27</a> <strong class="jxr_keyword">import</strong> org.eclipse.rdf4j.model.impl.SimpleValueFactory; +<a class="jxr_linenumber" name="L28" href="#L28">28</a> <strong class="jxr_keyword">import</strong> org.eclipse.rdf4j.rio.helpers.RDFaParserSettings; +<a class="jxr_linenumber" name="L29" href="#L29">29</a> <strong class="jxr_keyword">import</strong> org.jsoup.Jsoup; +<a class="jxr_linenumber" name="L30" href="#L30">30</a> <strong class="jxr_keyword">import</strong> org.jsoup.nodes.Document; +<a class="jxr_linenumber" name="L31" href="#L31">31</a> <strong class="jxr_keyword">import</strong> org.jsoup.parser.ParseSettings; +<a class="jxr_linenumber" name="L32" href="#L32">32</a> <strong class="jxr_keyword">import</strong> org.jsoup.parser.Parser; +<a class="jxr_linenumber" name="L33" href="#L33">33</a> <strong class="jxr_keyword">import</strong> org.semarglproject.rdf.rdfa.RdfaParser; +<a class="jxr_linenumber" name="L34" href="#L34">34</a> <strong class="jxr_keyword">import</strong> org.semarglproject.rdf4j.rdf.rdfa.SemarglParserSettings; +<a class="jxr_linenumber" name="L35" href="#L35">35</a> <strong class="jxr_keyword">import</strong> org.semarglproject.sink.XmlSink; +<a class="jxr_linenumber" name="L36" href="#L36">36</a> <strong class="jxr_keyword">import</strong> org.semarglproject.source.StreamProcessor; +<a class="jxr_linenumber" name="L37" href="#L37">37</a> +<a class="jxr_linenumber" name="L38" href="#L38">38</a> <strong class="jxr_keyword">import</strong> java.io.IOException; +<a class="jxr_linenumber" name="L39" href="#L39">39</a> <strong class="jxr_keyword">import</strong> java.io.InputStream; +<a class="jxr_linenumber" name="L40" href="#L40">40</a> <strong class="jxr_keyword">import</strong> java.io.PrintWriter; +<a class="jxr_linenumber" name="L41" href="#L41">41</a> <strong class="jxr_keyword">import</strong> java.io.StringWriter; +<a class="jxr_linenumber" name="L42" href="#L42">42</a> +<a class="jxr_linenumber" name="L43" href="#L43">43</a> <em class="jxr_javadoccomment">/**</em> +<a class="jxr_linenumber" name="L44" href="#L44">44</a> <em class="jxr_javadoccomment"> * @author Hans Brende ([email protected])</em> +<a class="jxr_linenumber" name="L45" href="#L45">45</a> <em class="jxr_javadoccomment"> */</em> +<a class="jxr_linenumber" name="L46" href="#L46">46</a> <strong class="jxr_keyword">abstract</strong> <strong class="jxr_keyword">class</strong> <a name="BaseRDFaExtractor" href="../../../../../org/apache/any23/extractor/rdfa/BaseRDFaExtractor.html#BaseRDFaExtractor">BaseRDFaExtractor</a> <strong class="jxr_keyword">extends</strong> <a name="BaseRDFExtractor" href="../../../../../org/apache/any23/extractor/rdf/BaseRDFExtractor.html#BaseRDFExtractor">BaseRDFExtractor</a> { +<a class="jxr_linenumber" name="L47" href="#L47">47</a> +<a class="jxr_linenumber" name="L48" href="#L48">48</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">short</strong> version; +<a class="jxr_linenumber" name="L49" href="#L49">49</a> +<a class="jxr_linenumber" name="L50" href="#L50">50</a> <a name="BaseRDFaExtractor" href="../../../../../org/apache/any23/extractor/rdfa/BaseRDFaExtractor.html#BaseRDFaExtractor">BaseRDFaExtractor</a>(<strong class="jxr_keyword">short</strong> version) { +<a class="jxr_linenumber" name="L51" href="#L51">51</a> <strong class="jxr_keyword">super</strong>(false, false); +<a class="jxr_linenumber" name="L52" href="#L52">52</a> <strong class="jxr_keyword">this</strong>.version = version; +<a class="jxr_linenumber" name="L53" href="#L53">53</a> } +<a class="jxr_linenumber" name="L54" href="#L54">54</a> +<a class="jxr_linenumber" name="L55" href="#L55">55</a> @Override +<a class="jxr_linenumber" name="L56" href="#L56">56</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> run(<a name="ExtractionParameters" href="../../../../../org/apache/any23/extractor/ExtractionParameters.html#ExtractionParameters">ExtractionParameters</a> extractionParameters, <a name="ExtractionContext" href="../../../../../org/apache/any23/extractor/ExtractionContext.html#ExtractionContext">ExtractionContext</a> extractionContext, InputStream in, +<a class="jxr_linenumber" name="L57" href="#L57">57</a> <a name="ExtractionResult" href="../../../../../org/apache/any23/extractor/ExtractionResult.html#ExtractionResult">ExtractionResult</a> extractionResult) <strong class="jxr_keyword">throws</strong> IOException, <a name="ExtractionException" href="../../../../../org/apache/any23/extractor/ExtractionException.html#ExtractionException">ExtractionException</a> { +<a class="jxr_linenumber" name="L58" href="#L58">58</a> +<a class="jxr_linenumber" name="L59" href="#L59">59</a> <a name="SemarglSink" href="../../../../../org/apache/any23/extr<a name="SemarglSink" href="../../../../../org/apache/any23/extractor/rdfa/SemarglSink.html#SemarglSink">SemarglSink</a>SemarglSink.html#SemarglSink">SemarglSink</a> rdfaSink = <strong class="jxr_keyword">new</strong> <a name="SemarglSink" href="../../../../../org/apache/any23/extractor/rdfa/SemarglSink.html#SemarglSink">SemarglSink</a>(extractionResult, <strong class="jxr_keyword">new</strong> <a name="Any23ValueFactoryWrapper" href="../../../../../org/apache/any23/rdf/Any23ValueFactoryWrapper.html#Any23ValueFactoryWrapper">Any23ValueFactoryWrapper</a>( +<a class="jxr_linenumber" name="L60" href="#L60">60</a> SimpleValueFactory.getInstance(), extractionResult, extractionContext.getDefaultLanguage())); +<a class="jxr_linenumber" name="L61" href="#L61">61</a> +<a class="jxr_linenumber" name="L62" href="#L62">62</a> XmlSink xmlSink = RdfaParser.connect(rdfaSink); +<a class="jxr_linenumber" name="L63" href="#L63">63</a> xmlSink.setProperty(StreamProcessor.PROCESSOR_GRAPH_HANDLER_PROPERTY, rdfaSink); +<a class="jxr_linenumber" name="L64" href="#L64">64</a> xmlSink.setProperty(RdfaParser.RDFA_VERSION_PROPERTY, version); +<a class="jxr_linenumber" name="L65" href="#L65">65</a> xmlSink.setProperty(RdfaParser.ENABLE_VOCAB_EXPANSION, +<a class="jxr_linenumber" name="L66" href="#L66">66</a> RDFaParserSettings.VOCAB_EXPANSION_ENABLED.getDefaultValue()); +<a class="jxr_linenumber" name="L67" href="#L67">67</a> xmlSink.setProperty(RdfaParser.ENABLE_PROCESSOR_GRAPH, +<a class="jxr_linenumber" name="L68" href="#L68">68</a> SemarglParserSettings.PROCESSOR_GRAPH_ENABLED.getDefaultValue()); +<a class="jxr_linenumber" name="L69" href="#L69">69</a> +<a class="jxr_linenumber" name="L70" href="#L70">70</a> String baseUri = extractionContext.getDocumentIRI().stringValue(); +<a class="jxr_linenumber" name="L71" href="#L71">71</a> xmlSink.setBaseUri(baseUri); +<a class="jxr_linenumber" name="L72" href="#L72">72</a> Document doc = Jsoup.parse(in, <strong class="jxr_keyword">null</strong>, baseUri, Parser.htmlParser().settings(ParseSettings.preserveCase)); +<a class="jxr_linenumber" name="L73" href="#L73">73</a> <strong class="jxr_keyword">try</strong> { +<a class="jxr_linenumber" name="L74" href="#L74">74</a> xmlSink.startDocument(); +<a class="jxr_linenumber" name="L75" href="#L75">75</a> doc.traverse(<strong class="jxr_keyword">new</strong> <a name="JsoupScanner" href="../../../../../org/apache/any23/extractor/rdfa/JsoupScanner.html#JsoupScanner">JsoupScanner</a>(xmlSink)); +<a class="jxr_linenumber" name="L76" href="#L76">76</a> xmlSink.endDocument(); +<a class="jxr_linenumber" name="L77" href="#L77">77</a> } <strong class="jxr_keyword">catch</strong> (Exception e) { +<a class="jxr_linenumber" name="L78" href="#L78">78</a> extractionResult.notifyIssue(IssueReport.IssueLevel.FATAL, toString(e), -1, -1); +<a class="jxr_linenumber" name="L79" href="#L79">79</a> } +<a class="jxr_linenumber" name="L80" href="#L80">80</a> } +<a class="jxr_linenumber" name="L81" href="#L81">81</a> +<a class="jxr_linenumber" name="L82" href="#L82">82</a> @SuppressWarnings(<span class="jxr_string">"Duplicates"</span>) +<a class="jxr_linenumber" name="L83" href="#L83">83</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> String toString(Throwable th) { +<a class="jxr_linenumber" name="L84" href="#L84">84</a> StringWriter writer = <strong class="jxr_keyword">new</strong> StringWriter(); +<a class="jxr_linenumber" name="L85" href="#L85">85</a> <strong class="jxr_keyword">try</strong> (PrintWriter pw = <strong class="jxr_keyword">new</strong> PrintWriter(writer)) { +<a class="jxr_linenumber" name="L86" href="#L86">86</a> th.printStackTrace(pw); +<a class="jxr_linenumber" name="L87" href="#L87">87</a> } +<a class="jxr_linenumber" name="L88" href="#L88">88</a> String string = writer.toString(); +<a class="jxr_linenumber" name="L89" href="#L89">89</a> <strong class="jxr_keyword">if</strong> (string.length() > 1024) { +<a class="jxr_linenumber" name="L90" href="#L90">90</a> <strong class="jxr_keyword">return</strong> string.substring(0, 1021) + <span class="jxr_string">"..."</span>; +<a class="jxr_linenumber" name="L91" href="#L91">91</a> } +<a class="jxr_linenumber" name="L92" href="#L92">92</a> <strong class="jxr_keyword">return</strong> string; +<a class="jxr_linenumber" name="L93" href="#L93">93</a> } +<a class="jxr_linenumber" name="L94" href="#L94">94</a> +<a class="jxr_linenumber" name="L95" href="#L95">95</a> } +</pre> +<hr/> +<div id="footer">Copyright © 2010–2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</div> +</body> +</html> Added: any23/site/xref/org/apache/any23/extractor/rdfa/JsoupScanner.html URL: http://svn.apache.org/viewvc/any23/site/xref/org/apache/any23/extractor/rdfa/JsoupScanner.html?rev=1893241&view=auto ============================================================================== --- any23/site/xref/org/apache/any23/extractor/rdfa/JsoupScanner.html (added) +++ any23/site/xref/org/apache/any23/extractor/rdfa/JsoupScanner.html Sat Sep 11 04:45:48 2021 @@ -0,0 +1,207 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<head><meta http-equiv="content-type" content="text/html; charset=UTF-8" /> +<title>JsoupScanner xref</title> +<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" /> +</head> +<body> +<div id="overview"><a href="../../../../../../apidocs/org/apache/any23/extractor/rdfa/JsoupScanner.html">View Javadoc</a></div><pre> +<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em class="jxr_comment">/*</em> +<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</em> +<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em class="jxr_comment"> * contributor license agreements. See the NOTICE file distributed with</em> +<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em class="jxr_comment"> * this work for additional information regarding copyright ownership.</em> +<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em class="jxr_comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</em> +<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em class="jxr_comment"> * (the "License"); you may not use this file except in compliance with</em> +<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em class="jxr_comment"> * the License. You may obtain a copy of the License at</em> +<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em class="jxr_comment"> *</em> +<a class="jxr_linenumber" name="L9" href="#L9">9</a> <em class="jxr_comment"> * <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em> +<a class="jxr_linenumber" name="L10" href="#L10">10</a> <em class="jxr_comment"> *</em> +<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing, software</em> +<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em class="jxr_comment"> * distributed under the License is distributed on an "AS IS" BASIS,</em> +<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em> +<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em class="jxr_comment"> * See the License for the specific language governing permissions and</em> +<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em class="jxr_comment"> * limitations under the License.</em> +<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em class="jxr_comment"> */</em> +<a class="jxr_linenumber" name="L17" href="#L17">17</a> +<a class="jxr_linenumber" name="L18" href="#L18">18</a> <strong class="jxr_keyword">package</strong> org.apache.any23.extractor.rdfa; +<a class="jxr_linenumber" name="L19" href="#L19">19</a> +<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong class="jxr_keyword">import</strong> org.apache.commons.lang3.ArrayUtils; +<a class="jxr_linenumber" name="L21" href="#L21">21</a> <strong class="jxr_keyword">import</strong> org.jsoup.nodes.CDataNode; +<a class="jxr_linenumber" name="L22" href="#L22">22</a> <strong class="jxr_keyword">import</strong> org.jsoup.nodes.Comment; +<a class="jxr_linenumber" name="L23" href="#L23">23</a> <strong class="jxr_keyword">import</strong> org.jsoup.nodes.Element; +<a class="jxr_linenumber" name="L24" href="#L24">24</a> <strong class="jxr_keyword">import</strong> org.jsoup.nodes.Node; +<a class="jxr_linenumber" name="L25" href="#L25">25</a> <strong class="jxr_keyword">import</strong> org.jsoup.nodes.TextNode; +<a class="jxr_linenumber" name="L26" href="#L26">26</a> <strong class="jxr_keyword">import</strong> org.jsoup.select.NodeVisitor; +<a class="jxr_linenumber" name="L27" href="#L27">27</a> <strong class="jxr_keyword">import</strong> org.semarglproject.sink.XmlSink; +<a class="jxr_linenumber" name="L28" href="#L28">28</a> <strong class="jxr_keyword">import</strong> org.xml.sax.SAXException; +<a class="jxr_linenumber" name="L29" href="#L29">29</a> <strong class="jxr_keyword">import</strong> org.xml.sax.helpers.AttributesImpl; +<a class="jxr_linenumber" name="L30" href="#L30">30</a> <strong class="jxr_keyword">import</strong> org.xml.sax.helpers.NamespaceSupport; +<a class="jxr_linenumber" name="L31" href="#L31">31</a> +<a class="jxr_linenumber" name="L32" href="#L32">32</a> <strong class="jxr_keyword">import</strong> java.util.ArrayList; +<a class="jxr_linenumber" name="L33" href="#L33">33</a> +<a class="jxr_linenumber" name="L34" href="#L34">34</a> <em class="jxr_javadoccomment">/**</em> +<a class="jxr_linenumber" name="L35" href="#L35">35</a> <em class="jxr_javadoccomment"> * @author Hans Brende ([email protected])</em> +<a class="jxr_linenumber" name="L36" href="#L36">36</a> <em class="jxr_javadoccomment"> */</em> +<a class="jxr_linenumber" name="L37" href="#L37">37</a> <strong class="jxr_keyword">class</strong> <a name="JsoupScanner" href="../../../../../org/apache/any23/extractor/rdfa/JsoupScanner.html#JsoupScanner">JsoupScanner</a> <strong class="jxr_keyword">implements</strong> NodeVisitor { +<a class="jxr_linenumber" name="L38" href="#L38">38</a> +<a class="jxr_linenumber" name="L39" href="#L39">39</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> NamespaceSupport ns = <strong class="jxr_keyword">new</strong> NamespaceSupport(); +<a class="jxr_linenumber" name="L40" href="#L40">40</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> AttributesImpl attrs = <strong class="jxr_keyword">new</strong> AttributesImpl(); +<a class="jxr_linenumber" name="L41" href="#L41">41</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String[] nameParts = <strong class="jxr_keyword">new</strong> String[3]; +<a class="jxr_linenumber" name="L42" href="#L42">42</a> +<a class="jxr_linenumber" name="L43" href="#L43">43</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> XmlSink handler; +<a class="jxr_linenumber" name="L44" href="#L44">44</a> +<a class="jxr_linenumber" name="L45" href="#L45">45</a> <a name="JsoupScanner" href="../../../../../org/apache/any23/extractor/rdfa/JsoupScanner.html#JsoupScanner">JsoupScanner</a>(XmlSink handler) { +<a class="jxr_linenumber" name="L46" href="#L46">46</a> <strong class="jxr_keyword">this</strong>.handler = handler; +<a class="jxr_linenumber" name="L47" href="#L47">47</a> } +<a class="jxr_linenumber" name="L48" href="#L48">48</a> +<a class="jxr_linenumber" name="L49" href="#L49">49</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> String orEmpty(String str) { +<a class="jxr_linenumber" name="L50" href="#L50">50</a> <strong class="jxr_keyword">return</strong> str == <strong class="jxr_keyword">null</strong> ? <span class="jxr_string">""</span> : str; +<a class="jxr_linenumber" name="L51" href="#L51">51</a> } +<a class="jxr_linenumber" name="L52" href="#L52">52</a> +<a class="jxr_linenumber" name="L53" href="#L53">53</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String[] commonHashDelimitedVocabs = { <span class="jxr_string">"http://creativecommons.org/ns"</span>, +<a class="jxr_linenumber" name="L54" href="#L54">54</a> <span class="jxr_string">"http://www.w3.org/2002/07/owl"</span>, <span class="jxr_string">"http://www.w3.org/1999/02/22-rdf-syntax-ns"</span>, <span class="jxr_string">"http://www.w3.org/ns/rdfa"</span>, +<a class="jxr_linenumber" name="L55" href="#L55">55</a> <span class="jxr_string">"http://www.w3.org/2000/01/rdf-schema"</span>, <span class="jxr_string">"http://www.w3.org/1999/xhtml/vocab"</span>, +<a class="jxr_linenumber" name="L56" href="#L56">56</a> <span class="jxr_string">"http://www.w3.org/2001/XMLSchema"</span>, <span class="jxr_string">"http://microformats.org/profile/hcard"</span>, +<a class="jxr_linenumber" name="L57" href="#L57">57</a> <span class="jxr_string">"http://www.w3.org/2006/vcard/ns"</span>, <span class="jxr_string">"http://ogp.me/ns"</span>, <span class="jxr_string">"http://ogp.me/ns/music"</span>, <span class="jxr_string">"http://ogp.me/ns/video"</span>, +<a class="jxr_linenumber" name="L58" href="#L58">58</a> <span class="jxr_string">"http://ogp.me/ns/article"</span>, <span class="jxr_string">"http://ogp.me/ns/book"</span>, <span class="jxr_string">"http://ogp.me/ns/profile"</span>, +<a class="jxr_linenumber" name="L59" href="#L59">59</a> <span class="jxr_string">"http://ogp.me/ns/website"</span> }; +<a class="jxr_linenumber" name="L60" href="#L60">60</a> +<a class="jxr_linenumber" name="L61" href="#L61">61</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> startElement(Element e) <strong class="jxr_keyword">throws</strong> SAXException { +<a class="jxr_linenumber" name="L62" href="#L62">62</a> ns.pushContext(); +<a class="jxr_linenumber" name="L63" href="#L63">63</a> +<a class="jxr_linenumber" name="L64" href="#L64">64</a> attrs.clear(); +<a class="jxr_linenumber" name="L65" href="#L65">65</a> <strong class="jxr_keyword">final</strong> ArrayList<String> remainingAttrs = <strong class="jxr_keyword">new</strong> ArrayList<>(); +<a class="jxr_linenumber" name="L66" href="#L66">66</a> <strong class="jxr_keyword">for</strong> (org.jsoup.nodes.Attribute attr : e.attributes()) { +<a class="jxr_linenumber" name="L67" href="#L67">67</a> String name = attr.getKey(); +<a class="jxr_linenumber" name="L68" href="#L68">68</a> String value = attr.getValue(); +<a class="jxr_linenumber" name="L69" href="#L69">69</a> <strong class="jxr_keyword">if</strong> (name.startsWith(<span class="jxr_string">"xmlns"</span>)) { +<a class="jxr_linenumber" name="L70" href="#L70">70</a> <strong class="jxr_keyword">if</strong> (name.length() == 5) { +<a class="jxr_linenumber" name="L71" href="#L71">71</a> ns.declarePrefix(<span class="jxr_string">""</span>, value); +<a class="jxr_linenumber" name="L72" href="#L72">72</a> handler.startPrefixMapping(<span class="jxr_string">""</span>, value); +<a class="jxr_linenumber" name="L73" href="#L73">73</a> <strong class="jxr_keyword">continue</strong>; +<a class="jxr_linenumber" name="L74" href="#L74">74</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (name.charAt(5) == ':') { +<a class="jxr_linenumber" name="L75" href="#L75">75</a> String localName = name.substring(6); +<a class="jxr_linenumber" name="L76" href="#L76">76</a> ns.declarePrefix(localName, value); +<a class="jxr_linenumber" name="L77" href="#L77">77</a> handler.startPrefixMapping(localName, value); +<a class="jxr_linenumber" name="L78" href="#L78">78</a> <strong class="jxr_keyword">continue</strong>; +<a class="jxr_linenumber" name="L79" href="#L79">79</a> } +<a class="jxr_linenumber" name="L80" href="#L80">80</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (name.equalsIgnoreCase(<span class="jxr_string">"vocab"</span>)) { +<a class="jxr_linenumber" name="L81" href="#L81">81</a> <em class="jxr_comment">// Fix for ANY23-428</em> +<a class="jxr_linenumber" name="L82" href="#L82">82</a> name = <span class="jxr_string">"vocab"</span>; +<a class="jxr_linenumber" name="L83" href="#L83">83</a> value = value.trim(); +<a class="jxr_linenumber" name="L84" href="#L84">84</a> <strong class="jxr_keyword">int</strong> len = value.length(); +<a class="jxr_linenumber" name="L85" href="#L85">85</a> <strong class="jxr_keyword">char</strong> lastChar; +<a class="jxr_linenumber" name="L86" href="#L86">86</a> <strong class="jxr_keyword">if</strong> (len != 0 && (lastChar = value.charAt(len - 1)) != '/' && lastChar != '#' && lastChar != ':') { +<a class="jxr_linenumber" name="L87" href="#L87">87</a> <strong class="jxr_keyword">if</strong> (ArrayUtils.contains(commonHashDelimitedVocabs, value)) { +<a class="jxr_linenumber" name="L88" href="#L88">88</a> value += <span class="jxr_string">"#"</span>; +<a class="jxr_linenumber" name="L89" href="#L89">89</a> } <strong class="jxr_keyword">else</strong> { +<a class="jxr_linenumber" name="L90" href="#L90">90</a> value += <span class="jxr_string">"/"</span>; +<a class="jxr_linenumber" name="L91" href="#L91">91</a> } +<a class="jxr_linenumber" name="L92" href="#L92">92</a> } +<a class="jxr_linenumber" name="L93" href="#L93">93</a> } +<a class="jxr_linenumber" name="L94" href="#L94">94</a> +<a class="jxr_linenumber" name="L95" href="#L95">95</a> remainingAttrs.add(name); +<a class="jxr_linenumber" name="L96" href="#L96">96</a> remainingAttrs.add(value); +<a class="jxr_linenumber" name="L97" href="#L97">97</a> } +<a class="jxr_linenumber" name="L98" href="#L98">98</a> +<a class="jxr_linenumber" name="L99" href="#L99">99</a> <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0, len = remainingAttrs.size(); i < len; i += 2) { +<a class="jxr_linenumber" name="L100" href="#L100">100</a> String name = remainingAttrs.get(i); +<a class="jxr_linenumber" name="L101" href="#L101">101</a> String value = remainingAttrs.get(i + 1); +<a class="jxr_linenumber" name="L102" href="#L102">102</a> String[] parts = ns.processName(name, nameParts, <strong class="jxr_keyword">true</strong>); +<a class="jxr_linenumber" name="L103" href="#L103">103</a> <strong class="jxr_keyword">if</strong> (parts != <strong class="jxr_keyword">null</strong>) { +<a class="jxr_linenumber" name="L104" href="#L104">104</a> attrs.addAttribute(orEmpty(parts[0]), orEmpty(parts[1]), parts[2], <span class="jxr_string">"CDATA"</span>, value); +<a class="jxr_linenumber" name="L105" href="#L105">105</a> } +<a class="jxr_linenumber" name="L106" href="#L106">106</a> } +<a class="jxr_linenumber" name="L107" href="#L107">107</a> +<a class="jxr_linenumber" name="L108" href="#L108">108</a> String qName = e.tagName(); +<a class="jxr_linenumber" name="L109" href="#L109">109</a> +<a class="jxr_linenumber" name="L110" href="#L110">110</a> String[] parts = ns.processName(qName, nameParts, false); +<a class="jxr_linenumber" name="L111" href="#L111">111</a> <strong class="jxr_keyword">if</strong> (parts == <strong class="jxr_keyword">null</strong>) { +<a class="jxr_linenumber" name="L112" href="#L112">112</a> handler.startElement(<span class="jxr_string">""</span>, <span class="jxr_string">""</span>, qName, attrs); +<a class="jxr_linenumber" name="L113" href="#L113">113</a> } <strong class="jxr_keyword">else</strong> { +<a class="jxr_linenumber" name="L114" href="#L114">114</a> handler.startElement(orEmpty(parts[0]), orEmpty(parts[1]), parts[2], attrs); +<a class="jxr_linenumber" name="L115" href="#L115">115</a> } +<a class="jxr_linenumber" name="L116" href="#L116">116</a> +<a class="jxr_linenumber" name="L117" href="#L117">117</a> } +<a class="jxr_linenumber" name="L118" href="#L118">118</a> +<a class="jxr_linenumber" name="L119" href="#L119">119</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> endElement(Element e) <strong class="jxr_keyword">throws</strong> SAXException { +<a class="jxr_linenumber" name="L120" href="#L120">120</a> +<a class="jxr_linenumber" name="L121" href="#L121">121</a> String qName = e.tagName(); +<a class="jxr_linenumber" name="L122" href="#L122">122</a> String[] parts = ns.processName(qName, nameParts, false); +<a class="jxr_linenumber" name="L123" href="#L123">123</a> <strong class="jxr_keyword">if</strong> (parts == <strong class="jxr_keyword">null</strong>) { +<a class="jxr_linenumber" name="L124" href="#L124">124</a> handler.endElement(<span class="jxr_string">""</span>, <span class="jxr_string">""</span>, qName); +<a class="jxr_linenumber" name="L125" href="#L125">125</a> } <strong class="jxr_keyword">else</strong> { +<a class="jxr_linenumber" name="L126" href="#L126">126</a> handler.endElement(orEmpty(parts[0]), orEmpty(parts[1]), parts[2]); +<a class="jxr_linenumber" name="L127" href="#L127">127</a> } +<a class="jxr_linenumber" name="L128" href="#L128">128</a> +<a class="jxr_linenumber" name="L129" href="#L129">129</a> <strong class="jxr_keyword">for</strong> (org.jsoup.nodes.Attribute attr : e.attributes()) { +<a class="jxr_linenumber" name="L130" href="#L130">130</a> String name = attr.getKey(); +<a class="jxr_linenumber" name="L131" href="#L131">131</a> <strong class="jxr_keyword">if</strong> (name.startsWith(<span class="jxr_string">"xmlns"</span>)) { +<a class="jxr_linenumber" name="L132" href="#L132">132</a> <strong class="jxr_keyword">if</strong> (name.length() == 5) { +<a class="jxr_linenumber" name="L133" href="#L133">133</a> handler.endPrefixMapping(<span class="jxr_string">""</span>); +<a class="jxr_linenumber" name="L134" href="#L134">134</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (name.charAt(5) == ':') { +<a class="jxr_linenumber" name="L135" href="#L135">135</a> String localName = name.substring(6); +<a class="jxr_linenumber" name="L136" href="#L136">136</a> handler.endPrefixMapping(localName); +<a class="jxr_linenumber" name="L137" href="#L137">137</a> } +<a class="jxr_linenumber" name="L138" href="#L138">138</a> } +<a class="jxr_linenumber" name="L139" href="#L139">139</a> } +<a class="jxr_linenumber" name="L140" href="#L140">140</a> +<a class="jxr_linenumber" name="L141" href="#L141">141</a> ns.popContext(); +<a class="jxr_linenumber" name="L142" href="#L142">142</a> } +<a class="jxr_linenumber" name="L143" href="#L143">143</a> +<a class="jxr_linenumber" name="L144" href="#L144">144</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> handleText(String str) <strong class="jxr_keyword">throws</strong> SAXException { +<a class="jxr_linenumber" name="L145" href="#L145">145</a> handler.characters(str.toCharArray(), 0, str.length()); +<a class="jxr_linenumber" name="L146" href="#L146">146</a> } +<a class="jxr_linenumber" name="L147" href="#L147">147</a> +<a class="jxr_linenumber" name="L148" href="#L148">148</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> handleComment(String str) <strong class="jxr_keyword">throws</strong> SAXException { +<a class="jxr_linenumber" name="L149" href="#L149">149</a> handler.comment(str.toCharArray(), 0, str.length()); +<a class="jxr_linenumber" name="L150" href="#L150">150</a> } +<a class="jxr_linenumber" name="L151" href="#L151">151</a> +<a class="jxr_linenumber" name="L152" href="#L152">152</a> @Override +<a class="jxr_linenumber" name="L153" href="#L153">153</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> head(Node node, <strong class="jxr_keyword">int</strong> depth) { +<a class="jxr_linenumber" name="L154" href="#L154">154</a> <strong class="jxr_keyword">try</strong> { +<a class="jxr_linenumber" name="L155" href="#L155">155</a> <strong class="jxr_keyword">if</strong> (node instanceof Element) { +<a class="jxr_linenumber" name="L156" href="#L156">156</a> startElement((Element) node); +<a class="jxr_linenumber" name="L157" href="#L157">157</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (node instanceof CDataNode) { +<a class="jxr_linenumber" name="L158" href="#L158">158</a> handler.startCDATA(); +<a class="jxr_linenumber" name="L159" href="#L159">159</a> handleText(((CDataNode) node).text()); +<a class="jxr_linenumber" name="L160" href="#L160">160</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (node instanceof TextNode) { +<a class="jxr_linenumber" name="L161" href="#L161">161</a> handleText(((TextNode) node).text()); +<a class="jxr_linenumber" name="L162" href="#L162">162</a> <em class="jxr_comment">// TODO support document types</em> +<a class="jxr_linenumber" name="L163" href="#L163">163</a> <em class="jxr_comment">// } else if (node instanceof DocumentType) {</em> +<a class="jxr_linenumber" name="L164" href="#L164">164</a> <em class="jxr_comment">// DocumentType dt = (DocumentType)node;</em> +<a class="jxr_linenumber" name="L165" href="#L165">165</a> <em class="jxr_comment">// handler.startDTD(dt.attr("name"), orNull(dt.attr("publicId")), orNull(dt.attr("systemId")));</em> +<a class="jxr_linenumber" name="L166" href="#L166">166</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (node instanceof Comment) { +<a class="jxr_linenumber" name="L167" href="#L167">167</a> handleComment(((Comment) node).getData()); +<a class="jxr_linenumber" name="L168" href="#L168">168</a> } +<a class="jxr_linenumber" name="L169" href="#L169">169</a> } <strong class="jxr_keyword">catch</strong> (SAXException e) { +<a class="jxr_linenumber" name="L170" href="#L170">170</a> sneakyThrow(e); +<a class="jxr_linenumber" name="L171" href="#L171">171</a> } +<a class="jxr_linenumber" name="L172" href="#L172">172</a> } +<a class="jxr_linenumber" name="L173" href="#L173">173</a> +<a class="jxr_linenumber" name="L174" href="#L174">174</a> @Override +<a class="jxr_linenumber" name="L175" href="#L175">175</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> tail(Node node, <strong class="jxr_keyword">int</strong> depth) { +<a class="jxr_linenumber" name="L176" href="#L176">176</a> <strong class="jxr_keyword">try</strong> { +<a class="jxr_linenumber" name="L177" href="#L177">177</a> <strong class="jxr_keyword">if</strong> (node instanceof Element) { +<a class="jxr_linenumber" name="L178" href="#L178">178</a> endElement((Element) node); +<a class="jxr_linenumber" name="L179" href="#L179">179</a> } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (node instanceof CDataNode) { +<a class="jxr_linenumber" name="L180" href="#L180">180</a> handler.endCDATA(); +<a class="jxr_linenumber" name="L181" href="#L181">181</a> <em class="jxr_comment">// TODO support document types</em> +<a class="jxr_linenumber" name="L182" href="#L182">182</a> <em class="jxr_comment">// } else if (node instanceof DocumentType) {</em> +<a class="jxr_linenumber" name="L183" href="#L183">183</a> <em class="jxr_comment">// handler.endDTD();</em> +<a class="jxr_linenumber" name="L184" href="#L184">184</a> } +<a class="jxr_linenumber" name="L185" href="#L185">185</a> } <strong class="jxr_keyword">catch</strong> (SAXException e) { +<a class="jxr_linenumber" name="L186" href="#L186">186</a> sneakyThrow(e); +<a class="jxr_linenumber" name="L187" href="#L187">187</a> } +<a class="jxr_linenumber" name="L188" href="#L188">188</a> } +<a class="jxr_linenumber" name="L189" href="#L189">189</a> +<a class="jxr_linenumber" name="L190" href="#L190">190</a> @SuppressWarnings(<span class="jxr_string">"unchecked"</span>) +<a class="jxr_linenumber" name="L191" href="#L191">191</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <E <strong class="jxr_keyword">extends</strong> Throwable> <strong class="jxr_keyword">void</strong> sneakyThrow(Throwable e) <strong class="jxr_keyword">throws</strong> E { +<a class="jxr_linenumber" name="L192" href="#L192">192</a> <strong class="jxr_keyword">throw</strong> (E) e; +<a class="jxr_linenumber" name="L193" href="#L193">193</a> } +<a class="jxr_linenumber" name="L194" href="#L194">194</a> } +</pre> +<hr/> +<div id="footer">Copyright © 2010–2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</div> +</body> +</html> Added: any23/site/xref/org/apache/any23/extractor/rdfa/SemarglSink.html URL: http://svn.apache.org/viewvc/any23/site/xref/org/apache/any23/extractor/rdfa/SemarglSink.html?rev=1893241&view=auto ============================================================================== --- any23/site/xref/org/apache/any23/extractor/rdfa/SemarglSink.html (added) +++ any23/site/xref/org/apache/any23/extractor/rdfa/SemarglSink.html Sat Sep 11 04:45:48 2021 @@ -0,0 +1,112 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<head><meta http-equiv="content-type" content="text/html; charset=UTF-8" /> +<title>SemarglSink xref</title> +<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" /> +</head> +<body> +<div id="overview"><a href="../../../../../../apidocs/org/apache/any23/extractor/rdfa/SemarglSink.html">View Javadoc</a></div><pre> +<a class="jxr_linenumber" name="L1" href="#L1">1</a> <em class="jxr_comment">/*</em> +<a class="jxr_linenumber" name="L2" href="#L2">2</a> <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</em> +<a class="jxr_linenumber" name="L3" href="#L3">3</a> <em class="jxr_comment"> * contributor license agreements. See the NOTICE file distributed with</em> +<a class="jxr_linenumber" name="L4" href="#L4">4</a> <em class="jxr_comment"> * this work for additional information regarding copyright ownership.</em> +<a class="jxr_linenumber" name="L5" href="#L5">5</a> <em class="jxr_comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</em> +<a class="jxr_linenumber" name="L6" href="#L6">6</a> <em class="jxr_comment"> * (the "License"); you may not use this file except in compliance with</em> +<a class="jxr_linenumber" name="L7" href="#L7">7</a> <em class="jxr_comment"> * the License. You may obtain a copy of the License at</em> +<a class="jxr_linenumber" name="L8" href="#L8">8</a> <em class="jxr_comment"> *</em> +<a class="jxr_linenumber" name="L9" href="#L9">9</a> <em class="jxr_comment"> * <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em> +<a class="jxr_linenumber" name="L10" href="#L10">10</a> <em class="jxr_comment"> *</em> +<a class="jxr_linenumber" name="L11" href="#L11">11</a> <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing, software</em> +<a class="jxr_linenumber" name="L12" href="#L12">12</a> <em class="jxr_comment"> * distributed under the License is distributed on an "AS IS" BASIS,</em> +<a class="jxr_linenumber" name="L13" href="#L13">13</a> <em class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em> +<a class="jxr_linenumber" name="L14" href="#L14">14</a> <em class="jxr_comment"> * See the License for the specific language governing permissions and</em> +<a class="jxr_linenumber" name="L15" href="#L15">15</a> <em class="jxr_comment"> * limitations under the License.</em> +<a class="jxr_linenumber" name="L16" href="#L16">16</a> <em class="jxr_comment"> */</em> +<a class="jxr_linenumber" name="L17" href="#L17">17</a> +<a class="jxr_linenumber" name="L18" href="#L18">18</a> <strong class="jxr_keyword">package</strong> org.apache.any23.extractor.rdfa; +<a class="jxr_linenumber" name="L19" href="#L19">19</a> +<a class="jxr_linenumber" name="L20" href="#L20">20</a> <strong class="jxr_keyword">import</strong> org.apache.any23.extractor.ExtractionResult; +<a class="jxr_linenumber" name="L21" href="#L21">21</a> <strong class="jxr_keyword">import</strong> org.apache.any23.extractor.IssueReport; +<a class="jxr_linenumber" name="L22" href="#L22">22</a> <strong class="jxr_keyword">import</strong> org.eclipse.rdf4j.model.Resource; +<a class="jxr_linenumber" name="L23" href="#L23">23</a> <strong class="jxr_keyword">import</strong> org.eclipse.rdf4j.model.Value; +<a class="jxr_linenumber" name="L24" href="#L24">24</a> <strong class="jxr_keyword">import</strong> org.eclipse.rdf4j.model.ValueFactory; +<a class="jxr_linenumber" name="L25" href="#L25">25</a> +<a class="jxr_linenumber" name="L26" href="#L26">26</a> <em class="jxr_javadoccomment">/**</em> +<a class="jxr_linenumber" name="L27" href="#L27">27</a> <em class="jxr_javadoccomment"> * @author Hans Brende ([email protected])</em> +<a class="jxr_linenumber" name="L28" href="#L28">28</a> <em class="jxr_javadoccomment"> */</em> +<a class="jxr_linenumber" name="L29" href="#L29">29</a> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">class</strong> <a name="SemarglSink" href="../../../../../org/apache/any23/extractor/rdfa/SemarglSink.html#SemarglSink">SemarglSink</a> <strong class="jxr_keyword">implements</strong> org.semarglproject.sink.TripleSink, org.semarglproject.rdf.ProcessorGraphHandler { +<a class="jxr_linenumber" name="L30" href="#L30">30</a> +<a class="jxr_linenumber" name="L31" href="#L31">31</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String BNODE_PREFIX = org.semarglproject.vocab.RDF.BNODE_PREFIX; +<a class="jxr_linenumber" name="L32" href="#L32">32</a> +<a class="jxr_linenumber" name="L33" href="#L33">33</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <a name="ExtractionResult" href="../../../../../org/apache/any23/extractor/ExtractionResult.html#ExtractionResult">ExtractionResult</a> handler; +<a class="jxr_linenumber" name="L34" href="#L34">34</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> ValueFactory valueFactory; +<a class="jxr_linenumber" name="L35" href="#L35">35</a> +<a class="jxr_linenumber" name="L36" href="#L36">36</a> <a name="SemarglSink" href="../../../../../org/apache/any23/extractor/rdfa/SemarglSink.html#SemarglSink">SemarglSink</a>(<a name="ExtractionResult" href="../../../../../org/apache/any23/extractor/ExtractionResult.html#ExtractionResult">ExtractionResult</a> handler, ValueFactory valueFactory) { +<a class="jxr_linenumber" name="L37" href="#L37">37</a> <strong class="jxr_keyword">this</strong>.handler = handler; +<a class="jxr_linenumber" name="L38" href="#L38">38</a> <strong class="jxr_keyword">this</strong>.valueFactory = valueFactory; +<a class="jxr_linenumber" name="L39" href="#L39">39</a> } +<a class="jxr_linenumber" name="L40" href="#L40">40</a> +<a class="jxr_linenumber" name="L41" href="#L41">41</a> <strong class="jxr_keyword">private</strong> Resource createResource(String arg) { +<a class="jxr_linenumber" name="L42" href="#L42">42</a> <strong class="jxr_keyword">if</strong> (arg.startsWith(BNODE_PREFIX)) { +<a class="jxr_linenumber" name="L43" href="#L43">43</a> <strong class="jxr_keyword">return</strong> valueFactory.createBNode(arg.substring(BNODE_PREFIX.length())); +<a class="jxr_linenumber" name="L44" href="#L44">44</a> } +<a class="jxr_linenumber" name="L45" href="#L45">45</a> <strong class="jxr_keyword">return</strong> valueFactory.createIRI(arg); +<a class="jxr_linenumber" name="L46" href="#L46">46</a> } +<a class="jxr_linenumber" name="L47" href="#L47">47</a> +<a class="jxr_linenumber" name="L48" href="#L48">48</a> <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> writeTriple(String s, String p, Value o) { +<a class="jxr_linenumber" name="L49" href="#L49">49</a> handler.writeTriple(createResource(s), valueFactory.createIRI(p), o); +<a class="jxr_linenumber" name="L50" href="#L50">50</a> } +<a class="jxr_linenumber" name="L51" href="#L51">51</a> +<a class="jxr_linenumber" name="L52" href="#L52">52</a> @Override +<a class="jxr_linenumber" name="L53" href="#L53">53</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">void</strong> addNonLiteral(String s, String p, String o) { +<a class="jxr_linenumber" name="L54" href="#L54">54</a> writeTriple(s, p, createResource(o)); +<a class="jxr_linenumber" name="L55" href="#L55">55</a> } +<a class="jxr_linenumber" name="L56" href="#L56">56</a> +<a class="jxr_linenumber" name="L57" href="#L57">57</a> @Override +<a class="jxr_linenumber" name="L58" href="#L58">58</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">void</strong> addPlainLiteral(String s, String p, String o, String lang) { +<a class="jxr_linenumber" name="L59" href="#L59">59</a> writeTriple(s, p, lang == <strong class="jxr_keyword">null</strong> ? valueFactory.createLiteral(o) : valueFactory.createLiteral(o, lang)); +<a class="jxr_linenumber" name="L60" href="#L60">60</a> } +<a class="jxr_linenumber" name="L61" href="#L61">61</a> +<a class="jxr_linenumber" name="L62" href="#L62">62</a> @Override +<a class="jxr_linenumber" name="L63" href="#L63">63</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">void</strong> addTypedLiteral(String s, String p, String o, String type) { +<a class="jxr_linenumber" name="L64" href="#L64">64</a> writeTriple(s, p, valueFactory.createLiteral(o, valueFactory.createIRI(type))); +<a class="jxr_linenumber" name="L65" href="#L65">65</a> } +<a class="jxr_linenumber" name="L66" href="#L66">66</a> +<a class="jxr_linenumber" name="L67" href="#L67">67</a> @Override +<a class="jxr_linenumber" name="L68" href="#L68">68</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> startStream() { +<a class="jxr_linenumber" name="L69" href="#L69">69</a> +<a class="jxr_linenumber" name="L70" href="#L70">70</a> } +<a class="jxr_linenumber" name="L71" href="#L71">71</a> +<a class="jxr_linenumber" name="L72" href="#L72">72</a> @Override +<a class="jxr_linenumber" name="L73" href="#L73">73</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> endStream() { +<a class="jxr_linenumber" name="L74" href="#L74">74</a> } +<a class="jxr_linenumber" name="L75" href="#L75">75</a> +<a class="jxr_linenumber" name="L76" href="#L76">76</a> @Override +<a class="jxr_linenumber" name="L77" href="#L77">77</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">boolean</strong> setProperty(String key, Object value) { +<a class="jxr_linenumber" name="L78" href="#L78">78</a> <strong class="jxr_keyword">return</strong> false; +<a class="jxr_linenumber" name="L79" href="#L79">79</a> } +<a class="jxr_linenumber" name="L80" href="#L80">80</a> +<a class="jxr_linenumber" name="L81" href="#L81">81</a> @Override +<a class="jxr_linenumber" name="L82" href="#L82">82</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> setBaseUri(String baseUri) { +<a class="jxr_linenumber" name="L83" href="#L83">83</a> } +<a class="jxr_linenumber" name="L84" href="#L84">84</a> +<a class="jxr_linenumber" name="L85" href="#L85">85</a> @Override +<a class="jxr_linenumber" name="L86" href="#L86">86</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> info(String infoClass, String message) { +<a class="jxr_linenumber" name="L87" href="#L87">87</a> +<a class="jxr_linenumber" name="L88" href="#L88">88</a> } +<a class="jxr_linenumber" name="L89" href="#L89">89</a> +<a class="jxr_linenumber" name="L90" href="#L90">90</a> @Override +<a class="jxr_linenumber" name="L91" href="#L91">91</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> warning(String warningClass, String message) { +<a class="jxr_linenumber" name="L92" href="#L92">92</a> handler.notifyIssue(IssueReport.IssueLevel.WARNING, message, -1, -1); +<a class="jxr_linenumber" name="L93" href="#L93">93</a> } +<a class="jxr_linenumber" name="L94" href="#L94">94</a> +<a class="jxr_linenumber" name="L95" href="#L95">95</a> @Override +<a class="jxr_linenumber" name="L96" href="#L96">96</a> <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> error(String errorClass, String message) { +<a class="jxr_linenumber" name="L97" href="#L97">97</a> handler.notifyIssue(IssueReport.IssueLevel.ERROR, message, -1, -1); +<a class="jxr_linenumber" name="L98" href="#L98">98</a> } +<a class="jxr_linenumber" name="L99" href="#L99">99</a> } +</pre> +<hr/> +<div id="footer">Copyright © 2010–2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</div> +</body> +</html>
