Modified: websites/production/commons/content/proper/commons-configuration/cobertura/org.apache.commons.configuration2.tree.ModelTransaction.html ============================================================================== --- websites/production/commons/content/proper/commons-configuration/cobertura/org.apache.commons.configuration2.tree.ModelTransaction.html (original) +++ websites/production/commons/content/proper/commons-configuration/cobertura/org.apache.commons.configuration2.tree.ModelTransaction.html Tue Nov 29 21:10:49 2016 @@ -154,7 +154,7 @@ <td class="src"><pre class="src"> <span class="comment"> * @version $Id: ModelTransaction.java 1678637 2015-05-10 20:22:51Z oheger $</span></pre></td></tr> <tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"> 223642</td> <td class="src"><pre class="src"> <span class="keyword">class</span> ModelTransaction</pre></td></tr> +<tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"> 221694</td> <td class="src"><pre class="src"> <span class="keyword">class</span> ModelTransaction</pre></td></tr> <tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> @@ -301,19 +301,19 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> ModelTransaction(TreeData treeData, NodeSelector selector,</pre></td></tr> <tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> NodeKeyResolver<ImmutableNode> resolver)</pre></td></tr> -<tr> <td class="numLineCover"> 139</td> <td class="nbHitsCovered"> 15570</td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 140</td> <td class="nbHitsCovered"> 15570</td> <td class="src"><pre class="src"> currentData = treeData;</pre></td></tr> -<tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"> 15571</td> <td class="src"><pre class="src"> <span class="keyword">this</span>.resolver = resolver;</pre></td></tr> -<tr> <td class="numLineCover"> 142</td> <td class="nbHitsCovered"> 15571</td> <td class="src"><pre class="src"> replacementMapping = getCurrentData().copyReplacementMapping();</pre></td></tr> -<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 15569</td> <td class="src"><pre class="src"> replacedNodes = <span class="keyword">new</span> HashMap<ImmutableNode, ImmutableNode>();</pre></td></tr> -<tr> <td class="numLineCover"> 144</td> <td class="nbHitsCovered"> 15570</td> <td class="src"><pre class="src"> parentMapping = getCurrentData().copyParentMapping();</pre></td></tr> -<tr> <td class="numLineCover"> 145</td> <td class="nbHitsCovered"> 15569</td> <td class="src"><pre class="src"> operations = <span class="keyword">new</span> TreeMap<Integer, Map<ImmutableNode, Operations>>();</pre></td></tr> -<tr> <td class="numLineCover"> 146</td> <td class="nbHitsCovered"> 15569</td> <td class="src"><pre class="src"> addedNodes = <span class="keyword">new</span> LinkedList<ImmutableNode>();</pre></td></tr> -<tr> <td class="numLineCover"> 147</td> <td class="nbHitsCovered"> 15568</td> <td class="src"><pre class="src"> removedNodes = <span class="keyword">new</span> LinkedList<ImmutableNode>();</pre></td></tr> -<tr> <td class="numLineCover"> 148</td> <td class="nbHitsCovered"> 15568</td> <td class="src"><pre class="src"> allRemovedNodes = <span class="keyword">new</span> LinkedList<ImmutableNode>();</pre></td></tr> -<tr> <td class="numLineCover"> 149</td> <td class="nbHitsCovered"> 15568</td> <td class="src"><pre class="src"> queryRoot = initQueryRoot(treeData, selector);</pre></td></tr> -<tr> <td class="numLineCover"> 150</td> <td class="nbHitsCovered"> 15569</td> <td class="src"><pre class="src"> rootNodeSelector = selector;</pre></td></tr> -<tr> <td class="numLineCover"> 151</td> <td class="nbHitsCovered"> 15569</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 139</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> {</pre></td></tr> +<tr> <td class="numLineCover"> 140</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> currentData = treeData;</pre></td></tr> +<tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> <span class="keyword">this</span>.resolver = resolver;</pre></td></tr> +<tr> <td class="numLineCover"> 142</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> replacementMapping = getCurrentData().copyReplacementMapping();</pre></td></tr> +<tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> replacedNodes = <span class="keyword">new</span> HashMap<ImmutableNode, ImmutableNode>();</pre></td></tr> +<tr> <td class="numLineCover"> 144</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> parentMapping = getCurrentData().copyParentMapping();</pre></td></tr> +<tr> <td class="numLineCover"> 145</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> operations = <span class="keyword">new</span> TreeMap<Integer, Map<ImmutableNode, Operations>>();</pre></td></tr> +<tr> <td class="numLineCover"> 146</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> addedNodes = <span class="keyword">new</span> LinkedList<ImmutableNode>();</pre></td></tr> +<tr> <td class="numLineCover"> 147</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> removedNodes = <span class="keyword">new</span> LinkedList<ImmutableNode>();</pre></td></tr> +<tr> <td class="numLineCover"> 148</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> allRemovedNodes = <span class="keyword">new</span> LinkedList<ImmutableNode>();</pre></td></tr> +<tr> <td class="numLineCover"> 149</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> queryRoot = initQueryRoot(treeData, selector);</pre></td></tr> +<tr> <td class="numLineCover"> 150</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> rootNodeSelector = selector;</pre></td></tr> +<tr> <td class="numLineCover"> 151</td> <td class="nbHitsCovered"> 15521</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 152</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 153</td> <td class="nbHits"> </td> @@ -330,7 +330,7 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> NodeKeyResolver<ImmutableNode> getResolver()</pre></td></tr> <tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 160</td> <td class="nbHitsCovered"> 15552</td> <td class="src"><pre class="src"> <span class="keyword">return</span> resolver;</pre></td></tr> +<tr> <td class="numLineCover"> 160</td> <td class="nbHitsCovered"> 15503</td> <td class="src"><pre class="src"> <span class="keyword">return</span> resolver;</pre></td></tr> <tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> @@ -355,7 +355,7 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> ImmutableNode getQueryRoot()</pre></td></tr> <tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 173</td> <td class="nbHitsCovered"> 18297</td> <td class="src"><pre class="src"> <span class="keyword">return</span> queryRoot;</pre></td></tr> +<tr> <td class="numLineCover"> 173</td> <td class="nbHitsCovered"> 18271</td> <td class="src"><pre class="src"> <span class="keyword">return</span> queryRoot;</pre></td></tr> <tr> <td class="numLine"> 174</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 175</td> <td class="nbHits"> </td> @@ -380,10 +380,10 @@ <td class="src"><pre class="src"> Collection<? <span class="keyword">extends</span> ImmutableNode> newNodes)</pre></td></tr> <tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 186</td> <td class="nbHitsCovered"> 8122</td> <td class="src"><pre class="src"> ChildrenUpdateOperation op = <span class="keyword">new</span> ChildrenUpdateOperation();</pre></td></tr> -<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"> 8122</td> <td class="src"><pre class="src"> op.addNewNodes(newNodes);</pre></td></tr> -<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"> 8122</td> <td class="src"><pre class="src"> fetchOperations(parent, LEVEL_UNKNOWN).addChildrenOperation(op);</pre></td></tr> -<tr> <td class="numLineCover"> 189</td> <td class="nbHitsCovered"> 8122</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 186</td> <td class="nbHitsCovered"> 8066</td> <td class="src"><pre class="src"> ChildrenUpdateOperation op = <span class="keyword">new</span> ChildrenUpdateOperation();</pre></td></tr> +<tr> <td class="numLineCover"> 187</td> <td class="nbHitsCovered"> 8066</td> <td class="src"><pre class="src"> op.addNewNodes(newNodes);</pre></td></tr> +<tr> <td class="numLineCover"> 188</td> <td class="nbHitsCovered"> 8066</td> <td class="src"><pre class="src"> fetchOperations(parent, LEVEL_UNKNOWN).addChildrenOperation(op);</pre></td></tr> +<tr> <td class="numLineCover"> 189</td> <td class="nbHitsCovered"> 8066</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 190</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 191</td> <td class="nbHits"> </td> @@ -402,10 +402,10 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> addAddNodeOperation(ImmutableNode parent, ImmutableNode newChild)</pre></td></tr> <tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"> 4342</td> <td class="src"><pre class="src"> ChildrenUpdateOperation op = <span class="keyword">new</span> ChildrenUpdateOperation();</pre></td></tr> -<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 4342</td> <td class="src"><pre class="src"> op.addNewNode(newChild);</pre></td></tr> -<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"> 4342</td> <td class="src"><pre class="src"> fetchOperations(parent, LEVEL_UNKNOWN).addChildrenOperation(op);</pre></td></tr> -<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 4342</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"> 4348</td> <td class="src"><pre class="src"> ChildrenUpdateOperation op = <span class="keyword">new</span> ChildrenUpdateOperation();</pre></td></tr> +<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 4348</td> <td class="src"><pre class="src"> op.addNewNode(newChild);</pre></td></tr> +<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"> 4348</td> <td class="src"><pre class="src"> fetchOperations(parent, LEVEL_UNKNOWN).addChildrenOperation(op);</pre></td></tr> +<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 4348</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> @@ -452,10 +452,10 @@ <td class="src"><pre class="src"> Map<String, Object> attributes)</pre></td></tr> <tr> <td class="numLine"> 226</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"> 1806</td> <td class="src"><pre class="src"> fetchOperations(target, LEVEL_UNKNOWN).addOperation(</pre></td></tr> +<tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"> 1758</td> <td class="src"><pre class="src"> fetchOperations(target, LEVEL_UNKNOWN).addOperation(</pre></td></tr> <tr> <td class="numLine"> 228</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="keyword">new</span> AddAttributesOperation(attributes));</pre></td></tr> -<tr> <td class="numLineCover"> 229</td> <td class="nbHitsCovered"> 1806</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 229</td> <td class="nbHitsCovered"> 1758</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 230</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> @@ -560,10 +560,10 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> addChangeNodeNameOperation(ImmutableNode target, String newName)</pre></td></tr> <tr> <td class="numLine"> 286</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 1763</td> <td class="src"><pre class="src"> fetchOperations(target, LEVEL_UNKNOWN).addOperation(</pre></td></tr> +<tr> <td class="numLineCover"> 287</td> <td class="nbHitsCovered"> 1715</td> <td class="src"><pre class="src"> fetchOperations(target, LEVEL_UNKNOWN).addOperation(</pre></td></tr> <tr> <td class="numLine"> 288</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="keyword">new</span> ChangeNodeNameOperation(newName));</pre></td></tr> -<tr> <td class="numLineCover"> 289</td> <td class="nbHitsCovered"> 1763</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 289</td> <td class="nbHitsCovered"> 1715</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 290</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 291</td> <td class="nbHits"> </td> @@ -582,8 +582,8 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> addNewReferences(Map<ImmutableNode, ?> refs)</pre></td></tr> <tr> <td class="numLine"> 298</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 299</td> <td class="nbHitsCovered"> 1761</td> <td class="src"><pre class="src"> fetchReferenceMap().putAll(refs);</pre></td></tr> -<tr> <td class="numLineCover"> 300</td> <td class="nbHitsCovered"> 1761</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 299</td> <td class="nbHitsCovered"> 1713</td> <td class="src"><pre class="src"> fetchReferenceMap().putAll(refs);</pre></td></tr> +<tr> <td class="numLineCover"> 300</td> <td class="nbHitsCovered"> 1713</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 301</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 302</td> <td class="nbHits"> </td> @@ -602,8 +602,8 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> addNewReference(ImmutableNode node, Object ref)</pre></td></tr> <tr> <td class="numLine"> 309</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 310</td> <td class="nbHitsCovered"> 1762</td> <td class="src"><pre class="src"> fetchReferenceMap().put(node, ref);</pre></td></tr> -<tr> <td class="numLineCover"> 311</td> <td class="nbHitsCovered"> 1762</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 310</td> <td class="nbHitsCovered"> 1714</td> <td class="src"><pre class="src"> fetchReferenceMap().put(node, ref);</pre></td></tr> +<tr> <td class="numLineCover"> 311</td> <td class="nbHitsCovered"> 1714</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 312</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 313</td> <td class="nbHits"> </td> @@ -624,11 +624,11 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> TreeData execute()</pre></td></tr> <tr> <td class="numLine"> 321</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 322</td> <td class="nbHitsCovered"> 15553</td> <td class="src"><pre class="src"> executeOperations();</pre></td></tr> -<tr> <td class="numLineCover"> 323</td> <td class="nbHitsCovered"> 15553</td> <td class="src"><pre class="src"> updateParentMapping();</pre></td></tr> -<tr> <td class="numLineCover"> 324</td> <td class="nbHitsCovered"> 31105</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> TreeData(newRoot, parentMapping, replacementMapping,</pre></td></tr> -<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 31104</td> <td class="src"><pre class="src"> currentData.getNodeTracker().update(newRoot, rootNodeSelector,</pre></td></tr> -<tr> <td class="numLineCover"> 326</td> <td class="nbHitsCovered"> 31104</td> <td class="src"><pre class="src"> getResolver(), getCurrentData()), updateReferenceTracker()</pre></td></tr> +<tr> <td class="numLineCover"> 322</td> <td class="nbHitsCovered"> 15502</td> <td class="src"><pre class="src"> executeOperations();</pre></td></tr> +<tr> <td class="numLineCover"> 323</td> <td class="nbHitsCovered"> 15503</td> <td class="src"><pre class="src"> updateParentMapping();</pre></td></tr> +<tr> <td class="numLineCover"> 324</td> <td class="nbHitsCovered"> 31006</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">new</span> TreeData(newRoot, parentMapping, replacementMapping,</pre></td></tr> +<tr> <td class="numLineCover"> 325</td> <td class="nbHitsCovered"> 31006</td> <td class="src"><pre class="src"> currentData.getNodeTracker().update(newRoot, rootNodeSelector,</pre></td></tr> +<tr> <td class="numLineCover"> 326</td> <td class="nbHitsCovered"> 31006</td> <td class="src"><pre class="src"> getResolver(), getCurrentData()), updateReferenceTracker()</pre></td></tr> <tr> <td class="numLine"> 327</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> );</pre></td></tr> <tr> <td class="numLine"> 328</td> <td class="nbHits"> </td> @@ -647,7 +647,7 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> TreeData getCurrentData()</pre></td></tr> <tr> <td class="numLine"> 335</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 336</td> <td class="nbHitsCovered"> 136162</td> <td class="src"><pre class="src"> <span class="keyword">return</span> currentData;</pre></td></tr> +<tr> <td class="numLineCover"> 336</td> <td class="nbHitsCovered"> 135741</td> <td class="src"><pre class="src"> <span class="keyword">return</span> currentData;</pre></td></tr> <tr> <td class="numLine"> 337</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 338</td> <td class="nbHits"> </td> @@ -695,28 +695,28 @@ <td class="src"><pre class="src"> Operations fetchOperations(ImmutableNode target, <span class="keyword">int</span> level)</pre></td></tr> <tr> <td class="numLine"> 360</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 361</td> <td class="nbHitsCovered"><a title="Line 361: Conditional coverage 100% (2/2)."> 32342</a></td> <td class="src"><pre class="src"> <a title="Line 361: Conditional coverage 100% (2/2)."> Integer nodeLevel =</a></pre></td></tr> -<tr> <td class="numLineCover"> 362</td> <td class="nbHitsCovered"> 19191</td> <td class="src"><pre class="src"> Integer.valueOf((level == LEVEL_UNKNOWN) ? level(target)</pre></td></tr> +<tr> <td class="numLineCover"> 361</td> <td class="nbHitsCovered"><a title="Line 361: Conditional coverage 100% (2/2)."> 32196</a></td> <td class="src"><pre class="src"> <a title="Line 361: Conditional coverage 100% (2/2)."> Integer nodeLevel =</a></pre></td></tr> +<tr> <td class="numLineCover"> 362</td> <td class="nbHitsCovered"> 19045</td> <td class="src"><pre class="src"> Integer.valueOf((level == LEVEL_UNKNOWN) ? level(target)</pre></td></tr> <tr> <td class="numLine"> 363</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> : level);</pre></td></tr> -<tr> <td class="numLineCover"> 364</td> <td class="nbHitsCovered"> 32342</td> <td class="src"><pre class="src"> Map<ImmutableNode, Operations> levelOperations =</pre></td></tr> -<tr> <td class="numLineCover"> 365</td> <td class="nbHitsCovered"> 32342</td> <td class="src"><pre class="src"> operations.get(nodeLevel);</pre></td></tr> -<tr> <td class="numLineCover"> 366</td> <td class="nbHitsCovered"><a title="Line 366: Conditional coverage 100% (2/2)."> 32342</a></td> <td class="src"><pre class="src"> <a title="Line 366: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (levelOperations == <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 364</td> <td class="nbHitsCovered"> 32196</td> <td class="src"><pre class="src"> Map<ImmutableNode, Operations> levelOperations =</pre></td></tr> +<tr> <td class="numLineCover"> 365</td> <td class="nbHitsCovered"> 32196</td> <td class="src"><pre class="src"> operations.get(nodeLevel);</pre></td></tr> +<tr> <td class="numLineCover"> 366</td> <td class="nbHitsCovered"><a title="Line 366: Conditional coverage 100% (2/2)."> 32196</a></td> <td class="src"><pre class="src"> <a title="Line 366: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (levelOperations == <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 367</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 368</td> <td class="nbHitsCovered"> 28631</td> <td class="src"><pre class="src"> levelOperations = <span class="keyword">new</span> HashMap<ImmutableNode, Operations>();</pre></td></tr> -<tr> <td class="numLineCover"> 369</td> <td class="nbHitsCovered"> 28631</td> <td class="src"><pre class="src"> operations.put(nodeLevel, levelOperations);</pre></td></tr> +<tr> <td class="numLineCover"> 368</td> <td class="nbHitsCovered"> 28581</td> <td class="src"><pre class="src"> levelOperations = <span class="keyword">new</span> HashMap<ImmutableNode, Operations>();</pre></td></tr> +<tr> <td class="numLineCover"> 369</td> <td class="nbHitsCovered"> 28581</td> <td class="src"><pre class="src"> operations.put(nodeLevel, levelOperations);</pre></td></tr> <tr> <td class="numLine"> 370</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 371</td> <td class="nbHitsCovered"> 32342</td> <td class="src"><pre class="src"> Operations ops = levelOperations.get(target);</pre></td></tr> -<tr> <td class="numLineCover"> 372</td> <td class="nbHitsCovered"><a title="Line 372: Conditional coverage 100% (2/2)."> 32342</a></td> <td class="src"><pre class="src"> <a title="Line 372: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ops == <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 371</td> <td class="nbHitsCovered"> 32195</td> <td class="src"><pre class="src"> Operations ops = levelOperations.get(target);</pre></td></tr> +<tr> <td class="numLineCover"> 372</td> <td class="nbHitsCovered"><a title="Line 372: Conditional coverage 100% (2/2)."> 32196</a></td> <td class="src"><pre class="src"> <a title="Line 372: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (ops == <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 373</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 374</td> <td class="nbHitsCovered"> 28705</td> <td class="src"><pre class="src"> ops = <span class="keyword">new</span> Operations();</pre></td></tr> -<tr> <td class="numLineCover"> 375</td> <td class="nbHitsCovered"> 28705</td> <td class="src"><pre class="src"> levelOperations.put(target, ops);</pre></td></tr> +<tr> <td class="numLineCover"> 374</td> <td class="nbHitsCovered"> 28655</td> <td class="src"><pre class="src"> ops = <span class="keyword">new</span> Operations();</pre></td></tr> +<tr> <td class="numLineCover"> 375</td> <td class="nbHitsCovered"> 28654</td> <td class="src"><pre class="src"> levelOperations.put(target, ops);</pre></td></tr> <tr> <td class="numLine"> 376</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 377</td> <td class="nbHitsCovered"> 32342</td> <td class="src"><pre class="src"> <span class="keyword">return</span> ops;</pre></td></tr> +<tr> <td class="numLineCover"> 377</td> <td class="nbHitsCovered"> 32196</td> <td class="src"><pre class="src"> <span class="keyword">return</span> ops;</pre></td></tr> <tr> <td class="numLine"> 378</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 379</td> <td class="nbHits"> </td> @@ -743,7 +743,7 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> ImmutableNode initQueryRoot(TreeData treeData, NodeSelector selector)</pre></td></tr> <tr> <td class="numLine"> 390</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 391</td> <td class="nbHitsCovered"><a title="Line 391: Conditional coverage 100% (2/2)."> 31137</a></td> <td class="src"><pre class="src"> <a title="Line 391: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> (selector == <span class="keyword">null</span>) ? treeData.getRootNode() : treeData</a></pre></td></tr> +<tr> <td class="numLineCover"> 391</td> <td class="nbHitsCovered"><a title="Line 391: Conditional coverage 100% (2/2)."> 31042</a></td> <td class="src"><pre class="src"> <a title="Line 391: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> (selector == <span class="keyword">null</span>) ? treeData.getRootNode() : treeData</a></pre></td></tr> <tr> <td class="numLineCover"> 392</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src"> .getNodeTracker().getTrackedNode(selector);</pre></td></tr> <tr> <td class="numLine"> 393</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> @@ -769,16 +769,16 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">int</span> level(ImmutableNode node)</pre></td></tr> <tr> <td class="numLine"> 404</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 405</td> <td class="nbHitsCovered"> 19191</td> <td class="src"><pre class="src"> ImmutableNode current = getCurrentData().getParent(node);</pre></td></tr> -<tr> <td class="numLineCover"> 406</td> <td class="nbHitsCovered"> 19191</td> <td class="src"><pre class="src"> <span class="keyword">int</span> level = 0;</pre></td></tr> -<tr> <td class="numLineCover"> 407</td> <td class="nbHitsCovered"><a title="Line 407: Conditional coverage 100% (2/2)."> 32414</a></td> <td class="src"><pre class="src"> <a title="Line 407: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (current != <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 405</td> <td class="nbHitsCovered"> 19045</td> <td class="src"><pre class="src"> ImmutableNode current = getCurrentData().getParent(node);</pre></td></tr> +<tr> <td class="numLineCover"> 406</td> <td class="nbHitsCovered"> 19045</td> <td class="src"><pre class="src"> <span class="keyword">int</span> level = 0;</pre></td></tr> +<tr> <td class="numLineCover"> 407</td> <td class="nbHitsCovered"><a title="Line 407: Conditional coverage 100% (2/2)."> 32268</a></td> <td class="src"><pre class="src"> <a title="Line 407: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (current != <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 408</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLineCover"> 409</td> <td class="nbHitsCovered"> 13223</td> <td class="src"><pre class="src"> level++;</pre></td></tr> <tr> <td class="numLineCover"> 410</td> <td class="nbHitsCovered"> 13223</td> <td class="src"><pre class="src"> current = getCurrentData().getParent(current);</pre></td></tr> <tr> <td class="numLine"> 411</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 412</td> <td class="nbHitsCovered"> 19191</td> <td class="src"><pre class="src"> <span class="keyword">return</span> level;</pre></td></tr> +<tr> <td class="numLineCover"> 412</td> <td class="nbHitsCovered"> 19045</td> <td class="src"><pre class="src"> <span class="keyword">return</span> level;</pre></td></tr> <tr> <td class="numLine"> 413</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 414</td> <td class="nbHits"> </td> @@ -793,18 +793,18 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">void</span> executeOperations()</pre></td></tr> <tr> <td class="numLine"> 419</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 420</td> <td class="nbHitsCovered"><a title="Line 420: Conditional coverage 100% (2/2)."> 44183</a></td> <td class="src"><pre class="src"> <a title="Line 420: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (!operations.isEmpty())</a></pre></td></tr> +<tr> <td class="numLineCover"> 420</td> <td class="nbHitsCovered"><a title="Line 420: Conditional coverage 100% (2/2)."> 44082</a></td> <td class="src"><pre class="src"> <a title="Line 420: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (!operations.isEmpty())</a></pre></td></tr> <tr> <td class="numLine"> 421</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 422</td> <td class="nbHitsCovered"> 28630</td> <td class="src"><pre class="src"> Integer level = operations.lastKey(); <span class="comment">// start down in hierarchy</span></pre></td></tr> -<tr> <td class="numLineCover"> 423</td> <td class="nbHitsCovered"> 28630</td> <td class="src"><pre class="src"> Map<ImmutableNode, Operations> levelOps = operations.remove(level);</pre></td></tr> -<tr> <td class="numLineCover"> 424</td> <td class="nbHitsCovered"><a title="Line 424: Conditional coverage 100% (2/2)."> 28630</a></td> <td class="src"><pre class="src"> <a title="Line 424: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Map.Entry<ImmutableNode, Operations> e : levelOps.entrySet())</a></pre></td></tr> +<tr> <td class="numLineCover"> 422</td> <td class="nbHitsCovered"> 28580</td> <td class="src"><pre class="src"> Integer level = operations.lastKey(); <span class="comment">// start down in hierarchy</span></pre></td></tr> +<tr> <td class="numLineCover"> 423</td> <td class="nbHitsCovered"> 28580</td> <td class="src"><pre class="src"> Map<ImmutableNode, Operations> levelOps = operations.remove(level);</pre></td></tr> +<tr> <td class="numLineCover"> 424</td> <td class="nbHitsCovered"><a title="Line 424: Conditional coverage 100% (2/2)."> 28580</a></td> <td class="src"><pre class="src"> <a title="Line 424: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Map.Entry<ImmutableNode, Operations> e : levelOps.entrySet())</a></pre></td></tr> <tr> <td class="numLine"> 425</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 426</td> <td class="nbHitsCovered"> 28704</td> <td class="src"><pre class="src"> e.getValue().apply(e.getKey(), level);</pre></td></tr> -<tr> <td class="numLineCover"> 427</td> <td class="nbHitsCovered"> 28704</td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 428</td> <td class="nbHitsCovered"> 28630</td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 429</td> <td class="nbHitsCovered"> 15553</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 426</td> <td class="nbHitsCovered"> 28653</td> <td class="src"><pre class="src"> e.getValue().apply(e.getKey(), level);</pre></td></tr> +<tr> <td class="numLineCover"> 427</td> <td class="nbHitsCovered"> 28654</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 428</td> <td class="nbHitsCovered"> 28580</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 429</td> <td class="nbHitsCovered"> 15503</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 430</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 431</td> <td class="nbHits"> </td> @@ -823,8 +823,8 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">void</span> updateParentMapping()</pre></td></tr> <tr> <td class="numLine"> 438</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 439</td> <td class="nbHitsCovered"> 15553</td> <td class="src"><pre class="src"> replacementMapping.putAll(replacedNodes);</pre></td></tr> -<tr> <td class="numLineCover"> 440</td> <td class="nbHitsCovered"><a title="Line 440: Conditional coverage 100% (2/2)."> 15553</a></td> <td class="src"><pre class="src"> <a title="Line 440: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (replacementMapping.size() > MAX_REPLACEMENTS)</a></pre></td></tr> +<tr> <td class="numLineCover"> 439</td> <td class="nbHitsCovered"> 15503</td> <td class="src"><pre class="src"> replacementMapping.putAll(replacedNodes);</pre></td></tr> +<tr> <td class="numLineCover"> 440</td> <td class="nbHitsCovered"><a title="Line 440: Conditional coverage 100% (2/2)."> 15503</a></td> <td class="src"><pre class="src"> <a title="Line 440: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (replacementMapping.size() > MAX_REPLACEMENTS)</a></pre></td></tr> <tr> <td class="numLine"> 441</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLineCover"> 442</td> <td class="nbHitsCovered"> 22</td> <td class="src"><pre class="src"> rebuildParentMapping();</pre></td></tr> @@ -834,11 +834,11 @@ <td class="src"><pre class="src"> <span class="keyword">else</span></pre></td></tr> <tr> <td class="numLine"> 445</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 446</td> <td class="nbHitsCovered"> 15531</td> <td class="src"><pre class="src"> updateParentMappingForAddedNodes();</pre></td></tr> -<tr> <td class="numLineCover"> 447</td> <td class="nbHitsCovered"> 15530</td> <td class="src"><pre class="src"> updateParentMappingForRemovedNodes();</pre></td></tr> +<tr> <td class="numLineCover"> 446</td> <td class="nbHitsCovered"> 15481</td> <td class="src"><pre class="src"> updateParentMappingForAddedNodes();</pre></td></tr> +<tr> <td class="numLineCover"> 447</td> <td class="nbHitsCovered"> 15481</td> <td class="src"><pre class="src"> updateParentMappingForRemovedNodes();</pre></td></tr> <tr> <td class="numLine"> 448</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 449</td> <td class="nbHitsCovered"> 15553</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 449</td> <td class="nbHitsCovered"> 15503</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 450</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 451</td> <td class="nbHits"> </td> @@ -871,12 +871,12 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">void</span> updateParentMappingForAddedNodes()</pre></td></tr> <tr> <td class="numLine"> 467</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 468</td> <td class="nbHitsCovered"><a title="Line 468: Conditional coverage 100% (2/2)."> 15531</a></td> <td class="src"><pre class="src"> <a title="Line 468: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ImmutableNode node : addedNodes)</a></pre></td></tr> +<tr> <td class="numLineCover"> 468</td> <td class="nbHitsCovered"><a title="Line 468: Conditional coverage 100% (2/2)."> 15481</a></td> <td class="src"><pre class="src"> <a title="Line 468: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ImmutableNode node : addedNodes)</a></pre></td></tr> <tr> <td class="numLine"> 469</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 470</td> <td class="nbHitsCovered"> 22819</td> <td class="src"><pre class="src"> InMemoryNodeModel.updateParentMapping(parentMapping, node);</pre></td></tr> -<tr> <td class="numLineCover"> 471</td> <td class="nbHitsCovered"> 22818</td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 472</td> <td class="nbHitsCovered"> 15530</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 470</td> <td class="nbHitsCovered"> 22018</td> <td class="src"><pre class="src"> InMemoryNodeModel.updateParentMapping(parentMapping, node);</pre></td></tr> +<tr> <td class="numLineCover"> 471</td> <td class="nbHitsCovered"> 22018</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 472</td> <td class="nbHitsCovered"> 15481</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 473</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 474</td> <td class="nbHits"> </td> @@ -891,12 +891,12 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">void</span> updateParentMappingForRemovedNodes()</pre></td></tr> <tr> <td class="numLine"> 479</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 480</td> <td class="nbHitsCovered"><a title="Line 480: Conditional coverage 100% (2/2)."> 15530</a></td> <td class="src"><pre class="src"> <a title="Line 480: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ImmutableNode node : removedNodes)</a></pre></td></tr> +<tr> <td class="numLineCover"> 480</td> <td class="nbHitsCovered"><a title="Line 480: Conditional coverage 100% (2/2)."> 15481</a></td> <td class="src"><pre class="src"> <a title="Line 480: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ImmutableNode node : removedNodes)</a></pre></td></tr> <tr> <td class="numLine"> 481</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLineCover"> 482</td> <td class="nbHitsCovered"> 8251</td> <td class="src"><pre class="src"> removeNodesFromParentAndReplacementMapping(node);</pre></td></tr> <tr> <td class="numLineCover"> 483</td> <td class="nbHitsCovered"> 8251</td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 484</td> <td class="nbHitsCovered"> 15531</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 484</td> <td class="nbHitsCovered"> 15481</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 485</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 486</td> <td class="nbHits"> </td> @@ -977,14 +977,14 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> ReferenceTracker updateReferenceTracker()</pre></td></tr> <tr> <td class="numLine"> 530</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 531</td> <td class="nbHitsCovered"> 15552</td> <td class="src"><pre class="src"> ReferenceTracker tracker = currentData.getReferenceTracker();</pre></td></tr> -<tr> <td class="numLineCover"> 532</td> <td class="nbHitsCovered"><a title="Line 532: Conditional coverage 100% (2/2)."> 15552</a></td> <td class="src"><pre class="src"> <a title="Line 532: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (newReferences != <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 531</td> <td class="nbHitsCovered"> 15503</td> <td class="src"><pre class="src"> ReferenceTracker tracker = currentData.getReferenceTracker();</pre></td></tr> +<tr> <td class="numLineCover"> 532</td> <td class="nbHitsCovered"><a title="Line 532: Conditional coverage 100% (2/2)."> 15503</a></td> <td class="src"><pre class="src"> <a title="Line 532: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (newReferences != <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 533</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 534</td> <td class="nbHitsCovered"> 1762</td> <td class="src"><pre class="src"> tracker = tracker.addReferences(newReferences);</pre></td></tr> +<tr> <td class="numLineCover"> 534</td> <td class="nbHitsCovered"> 1714</td> <td class="src"><pre class="src"> tracker = tracker.addReferences(newReferences);</pre></td></tr> <tr> <td class="numLine"> 535</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 536</td> <td class="nbHitsCovered"> 15552</td> <td class="src"><pre class="src"> <span class="keyword">return</span> tracker.updateReferences(replacedNodes, allRemovedNodes);</pre></td></tr> +<tr> <td class="numLineCover"> 536</td> <td class="nbHitsCovered"> 15503</td> <td class="src"><pre class="src"> <span class="keyword">return</span> tracker.updateReferences(replacedNodes, allRemovedNodes);</pre></td></tr> <tr> <td class="numLine"> 537</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 538</td> <td class="nbHits"> </td> @@ -1003,13 +1003,13 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> Map<ImmutableNode, Object> fetchReferenceMap()</pre></td></tr> <tr> <td class="numLine"> 545</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 546</td> <td class="nbHitsCovered"><a title="Line 546: Conditional coverage 100% (2/2)."> 3523</a></td> <td class="src"><pre class="src"> <a title="Line 546: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (newReferences == <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 546</td> <td class="nbHitsCovered"><a title="Line 546: Conditional coverage 100% (2/2)."> 3427</a></td> <td class="src"><pre class="src"> <a title="Line 546: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (newReferences == <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 547</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 548</td> <td class="nbHitsCovered"> 1762</td> <td class="src"><pre class="src"> newReferences = <span class="keyword">new</span> HashMap<ImmutableNode, Object>();</pre></td></tr> +<tr> <td class="numLineCover"> 548</td> <td class="nbHitsCovered"> 1714</td> <td class="src"><pre class="src"> newReferences = <span class="keyword">new</span> HashMap<ImmutableNode, Object>();</pre></td></tr> <tr> <td class="numLine"> 549</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 550</td> <td class="nbHitsCovered"> 3523</td> <td class="src"><pre class="src"> <span class="keyword">return</span> newReferences;</pre></td></tr> +<tr> <td class="numLineCover"> 550</td> <td class="nbHitsCovered"> 3427</td> <td class="src"><pre class="src"> <span class="keyword">return</span> newReferences;</pre></td></tr> <tr> <td class="numLine"> 551</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 552</td> <td class="nbHits"> </td> @@ -1036,7 +1036,7 @@ <td class="src"><pre class="src"> Collection<? <span class="keyword">extends</span> E> col2)</pre></td></tr> <tr> <td class="numLine"> 563</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 564</td> <td class="nbHitsCovered"><a title="Line 564: Conditional coverage 100% (2/2)."> 59368</a></td> <td class="src"><pre class="src"> <a title="Line 564: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (col2 == <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 564</td> <td class="nbHitsCovered"><a title="Line 564: Conditional coverage 100% (2/2)."> 59212</a></td> <td class="src"><pre class="src"> <a title="Line 564: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (col2 == <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 565</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLineCover"> 566</td> <td class="nbHitsCovered"> 26318</td> <td class="src"><pre class="src"> <span class="keyword">return</span> col1;</pre></td></tr> @@ -1044,10 +1044,10 @@ <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 568</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 569</td> <td class="nbHitsCovered"><a title="Line 569: Conditional coverage 100% (2/2)."> 33050</a></td> <td class="src"><pre class="src"> <a title="Line 569: Conditional coverage 100% (2/2)."> Collection<E> result =</a></pre></td></tr> -<tr> <td class="numLineCover"> 570</td> <td class="nbHitsCovered"> 20586</td> <td class="src"><pre class="src"> (col1 != <span class="keyword">null</span>) ? col1 : <span class="keyword">new</span> ArrayList<E>(col2.size());</pre></td></tr> -<tr> <td class="numLineCover"> 571</td> <td class="nbHitsCovered"> 33050</td> <td class="src"><pre class="src"> result.addAll(col2);</pre></td></tr> -<tr> <td class="numLineCover"> 572</td> <td class="nbHitsCovered"> 33050</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr> +<tr> <td class="numLineCover"> 569</td> <td class="nbHitsCovered"><a title="Line 569: Conditional coverage 100% (2/2)."> 32894</a></td> <td class="src"><pre class="src"> <a title="Line 569: Conditional coverage 100% (2/2)."> Collection<E> result =</a></pre></td></tr> +<tr> <td class="numLineCover"> 570</td> <td class="nbHitsCovered"> 20480</td> <td class="src"><pre class="src"> (col1 != <span class="keyword">null</span>) ? col1 : <span class="keyword">new</span> ArrayList<E>(col2.size());</pre></td></tr> +<tr> <td class="numLineCover"> 571</td> <td class="nbHitsCovered"> 32894</td> <td class="src"><pre class="src"> result.addAll(col2);</pre></td></tr> +<tr> <td class="numLineCover"> 572</td> <td class="nbHitsCovered"> 32894</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr> <tr> <td class="numLine"> 573</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 574</td> <td class="nbHits"> </td> @@ -1148,9 +1148,9 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">static</span> <E> Collection<E> append(Collection<E> col, E node)</pre></td></tr> <tr> <td class="numLine"> 627</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 628</td> <td class="nbHitsCovered"><a title="Line 628: Conditional coverage 100% (2/2)."> 11030</a></td> <td class="src"><pre class="src"> <a title="Line 628: Conditional coverage 100% (2/2)."> Collection<E> result = (col != <span class="keyword">null</span>) ? col : <span class="keyword">new</span> LinkedList<E>();</a></pre></td></tr> -<tr> <td class="numLineCover"> 629</td> <td class="nbHitsCovered"> 11030</td> <td class="src"><pre class="src"> result.add(node);</pre></td></tr> -<tr> <td class="numLineCover"> 630</td> <td class="nbHitsCovered"> 11030</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr> +<tr> <td class="numLineCover"> 628</td> <td class="nbHitsCovered"><a title="Line 628: Conditional coverage 100% (2/2)."> 10940</a></td> <td class="src"><pre class="src"> <a title="Line 628: Conditional coverage 100% (2/2)."> Collection<E> result = (col != <span class="keyword">null</span>) ? col : <span class="keyword">new</span> LinkedList<E>();</a></pre></td></tr> +<tr> <td class="numLineCover"> 629</td> <td class="nbHitsCovered"> 10940</td> <td class="src"><pre class="src"> result.add(node);</pre></td></tr> +<tr> <td class="numLineCover"> 630</td> <td class="nbHitsCovered"> 10940</td> <td class="src"><pre class="src"> <span class="keyword">return</span> result;</pre></td></tr> <tr> <td class="numLine"> 631</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 632</td> <td class="nbHits"> </td> @@ -1225,7 +1225,7 @@ <td class="src"><pre class="src"> <span class="comment"> * node. Concrete subclasses implement specific update operations.</span></pre></td></tr> <tr> <td class="numLine"> 670</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 671</td> <td class="nbHitsCovered"> 64684</td> <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">abstract</span> <span class="keyword">class</span> Operation</pre></td></tr> +<tr> <td class="numLineCover"> 671</td> <td class="nbHitsCovered"> 64392</td> <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">abstract</span> <span class="keyword">class</span> Operation</pre></td></tr> <tr> <td class="numLine"> 672</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLine"> 673</td> <td class="nbHits"> </td> @@ -1270,7 +1270,7 @@ <td class="src"><pre class="src"> <span class="comment"> * operations dynamically.</span></pre></td></tr> <tr> <td class="numLine"> 693</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 694</td> <td class="nbHitsCovered"> 51308</td> <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">class</span> ChildrenUpdateOperation <span class="keyword">extends</span> Operation</pre></td></tr> +<tr> <td class="numLineCover"> 694</td> <td class="nbHitsCovered"> 51208</td> <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">class</span> ChildrenUpdateOperation <span class="keyword">extends</span> Operation</pre></td></tr> <tr> <td class="numLine"> 695</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLine"> 696</td> <td class="nbHits"> </td> @@ -1331,8 +1331,8 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> addNewNode(ImmutableNode node)</pre></td></tr> <tr> <td class="numLine"> 726</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 727</td> <td class="nbHitsCovered"> 4342</td> <td class="src"><pre class="src"> newNodes = append(newNodes, node);</pre></td></tr> -<tr> <td class="numLineCover"> 728</td> <td class="nbHitsCovered"> 4342</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 727</td> <td class="nbHitsCovered"> 4348</td> <td class="src"><pre class="src"> newNodes = append(newNodes, node);</pre></td></tr> +<tr> <td class="numLineCover"> 728</td> <td class="nbHitsCovered"> 4348</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 729</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 730</td> <td class="nbHits"> </td> @@ -1351,8 +1351,8 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> addNewNodes(Collection<? <span class="keyword">extends</span> ImmutableNode> nodes)</pre></td></tr> <tr> <td class="numLine"> 737</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 738</td> <td class="nbHitsCovered"> 8122</td> <td class="src"><pre class="src"> newNodes = concatenate(newNodes, nodes);</pre></td></tr> -<tr> <td class="numLineCover"> 739</td> <td class="nbHitsCovered"> 8122</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 738</td> <td class="nbHitsCovered"> 8066</td> <td class="src"><pre class="src"> newNodes = concatenate(newNodes, nodes);</pre></td></tr> +<tr> <td class="numLineCover"> 739</td> <td class="nbHitsCovered"> 8066</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 740</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 741</td> <td class="nbHits"> </td> @@ -1419,17 +1419,17 @@ <td class="src"><pre class="src"> Operations operations)</pre></td></tr> <tr> <td class="numLine"> 774</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 775</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> Map<ImmutableNode, ImmutableNode> replacements =</pre></td></tr> -<tr> <td class="numLineCover"> 776</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> fetchReplacementMap();</pre></td></tr> -<tr> <td class="numLineCover"> 777</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> Set<ImmutableNode> removals = fetchRemovalSet();</pre></td></tr> -<tr> <td class="numLineCover"> 778</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> List<ImmutableNode> resultNodes = <span class="keyword">new</span> LinkedList<ImmutableNode>();</pre></td></tr> +<tr> <td class="numLineCover"> 775</td> <td class="nbHitsCovered"> 25542</td> <td class="src"><pre class="src"> Map<ImmutableNode, ImmutableNode> replacements =</pre></td></tr> +<tr> <td class="numLineCover"> 776</td> <td class="nbHitsCovered"> 25542</td> <td class="src"><pre class="src"> fetchReplacementMap();</pre></td></tr> +<tr> <td class="numLineCover"> 777</td> <td class="nbHitsCovered"> 25542</td> <td class="src"><pre class="src"> Set<ImmutableNode> removals = fetchRemovalSet();</pre></td></tr> +<tr> <td class="numLineCover"> 778</td> <td class="nbHitsCovered"> 25543</td> <td class="src"><pre class="src"> List<ImmutableNode> resultNodes = <span class="keyword">new</span> LinkedList<ImmutableNode>();</pre></td></tr> <tr> <td class="numLine"> 779</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 780</td> <td class="nbHitsCovered"><a title="Line 780: Conditional coverage 100% (2/2)."> 25593</a></td> <td class="src"><pre class="src"> <a title="Line 780: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ImmutableNode nd : target.getChildren())</a></pre></td></tr> +<tr> <td class="numLineCover"> 780</td> <td class="nbHitsCovered"><a title="Line 780: Conditional coverage 100% (2/2)."> 25543</a></td> <td class="src"><pre class="src"> <a title="Line 780: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ImmutableNode nd : target.getChildren())</a></pre></td></tr> <tr> <td class="numLine"> 781</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLineCover"> 782</td> <td class="nbHitsCovered"> 233086</td> <td class="src"><pre class="src"> ImmutableNode repl = replacements.get(nd);</pre></td></tr> -<tr> <td class="numLineCover"> 783</td> <td class="nbHitsCovered"><a title="Line 783: Conditional coverage 100% (2/2)."> 233086</a></td> <td class="src"><pre class="src"> <a title="Line 783: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (repl != <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 783</td> <td class="nbHitsCovered"><a title="Line 783: Conditional coverage 100% (2/2)."> 233087</a></td> <td class="src"><pre class="src"> <a title="Line 783: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (repl != <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 784</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLineCover"> 785</td> <td class="nbHitsCovered"> 4908</td> <td class="src"><pre class="src"> resultNodes.add(repl);</pre></td></tr> @@ -1440,7 +1440,7 @@ <td class="src"><pre class="src"> <span class="keyword">else</span></pre></td></tr> <tr> <td class="numLine"> 789</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 790</td> <td class="nbHitsCovered"><a title="Line 790: Conditional coverage 100% (2/2)."> 228178</a></td> <td class="src"><pre class="src"> <a title="Line 790: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (removals.contains(nd))</a></pre></td></tr> +<tr> <td class="numLineCover"> 790</td> <td class="nbHitsCovered"><a title="Line 790: Conditional coverage 100% (2/2)."> 228179</a></td> <td class="src"><pre class="src"> <a title="Line 790: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (removals.contains(nd))</a></pre></td></tr> <tr> <td class="numLine"> 791</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLineCover"> 792</td> <td class="nbHitsCovered"> 8281</td> <td class="src"><pre class="src"> removedNodes.add(nd);</pre></td></tr> @@ -1450,17 +1450,17 @@ <td class="src"><pre class="src"> <span class="keyword">else</span></pre></td></tr> <tr> <td class="numLine"> 795</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 796</td> <td class="nbHitsCovered"> 219897</td> <td class="src"><pre class="src"> resultNodes.add(nd);</pre></td></tr> +<tr> <td class="numLineCover"> 796</td> <td class="nbHitsCovered"> 219898</td> <td class="src"><pre class="src"> resultNodes.add(nd);</pre></td></tr> <tr> <td class="numLine"> 797</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 798</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 799</td> <td class="nbHitsCovered"> 233086</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 799</td> <td class="nbHitsCovered"> 233087</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 800</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 801</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> concatenate(resultNodes, newNodes);</pre></td></tr> -<tr> <td class="numLineCover"> 802</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> operations.newNodesAdded(newNodes);</pre></td></tr> -<tr> <td class="numLineCover"> 803</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> <span class="keyword">return</span> target.replaceChildren(resultNodes);</pre></td></tr> +<tr> <td class="numLineCover"> 801</td> <td class="nbHitsCovered"> 25543</td> <td class="src"><pre class="src"> concatenate(resultNodes, newNodes);</pre></td></tr> +<tr> <td class="numLineCover"> 802</td> <td class="nbHitsCovered"> 25543</td> <td class="src"><pre class="src"> operations.newNodesAdded(newNodes);</pre></td></tr> +<tr> <td class="numLineCover"> 803</td> <td class="nbHitsCovered"> 25543</td> <td class="src"><pre class="src"> <span class="keyword">return</span> target.replaceChildren(resultNodes);</pre></td></tr> <tr> <td class="numLine"> 804</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 805</td> <td class="nbHits"> </td> @@ -1481,8 +1481,8 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> Map<ImmutableNode, ImmutableNode> fetchReplacementMap()</pre></td></tr> <tr> <td class="numLine"> 813</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 814</td> <td class="nbHitsCovered"><a title="Line 814: Conditional coverage 100% (2/2)."> 51186</a></td> <td class="src"><pre class="src"> <a title="Line 814: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> (nodesToReplace != <span class="keyword">null</span>) ? nodesToReplace : Collections</a></pre></td></tr> -<tr> <td class="numLineCover"> 815</td> <td class="nbHitsCovered"> 20731</td> <td class="src"><pre class="src"> .<ImmutableNode, ImmutableNode> emptyMap();</pre></td></tr> +<tr> <td class="numLineCover"> 814</td> <td class="nbHitsCovered"><a title="Line 814: Conditional coverage 100% (2/2)."> 51084</a></td> <td class="src"><pre class="src"> <a title="Line 814: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> (nodesToReplace != <span class="keyword">null</span>) ? nodesToReplace : Collections</a></pre></td></tr> +<tr> <td class="numLineCover"> 815</td> <td class="nbHitsCovered"> 20680</td> <td class="src"><pre class="src"> .<ImmutableNode, ImmutableNode> emptyMap();</pre></td></tr> <tr> <td class="numLine"> 816</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 817</td> <td class="nbHits"> </td> @@ -1503,8 +1503,8 @@ <td class="src"><pre class="src"> <span class="keyword">private</span> Set<ImmutableNode> fetchRemovalSet()</pre></td></tr> <tr> <td class="numLine"> 825</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 826</td> <td class="nbHitsCovered"><a title="Line 826: Conditional coverage 100% (2/2)."> 51186</a></td> <td class="src"><pre class="src"> <a title="Line 826: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> (nodesToRemove != <span class="keyword">null</span>) ? nodesToRemove : Collections</a></pre></td></tr> -<tr> <td class="numLineCover"> 827</td> <td class="nbHitsCovered"> 17320</td> <td class="src"><pre class="src"> .<ImmutableNode> emptySet();</pre></td></tr> +<tr> <td class="numLineCover"> 826</td> <td class="nbHitsCovered"><a title="Line 826: Conditional coverage 100% (2/2)."> 51085</a></td> <td class="src"><pre class="src"> <a title="Line 826: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> (nodesToRemove != <span class="keyword">null</span>) ? nodesToRemove : Collections</a></pre></td></tr> +<tr> <td class="numLineCover"> 827</td> <td class="nbHitsCovered"> 17270</td> <td class="src"><pre class="src"> .<ImmutableNode> emptySet();</pre></td></tr> <tr> <td class="numLine"> 828</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 829</td> <td class="nbHits"> </td> @@ -1598,9 +1598,9 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 876</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="keyword">public</span> AddAttributesOperation(Map<String, Object> attrs)</pre></td></tr> -<tr> <td class="numLineCover"> 877</td> <td class="nbHitsCovered"> 1806</td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 878</td> <td class="nbHitsCovered"> 1806</td> <td class="src"><pre class="src"> attributes = attrs;</pre></td></tr> -<tr> <td class="numLineCover"> 879</td> <td class="nbHitsCovered"> 1806</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 877</td> <td class="nbHitsCovered"> 1758</td> <td class="src"><pre class="src"> {</pre></td></tr> +<tr> <td class="numLineCover"> 878</td> <td class="nbHitsCovered"> 1758</td> <td class="src"><pre class="src"> attributes = attrs;</pre></td></tr> +<tr> <td class="numLineCover"> 879</td> <td class="nbHitsCovered"> 1758</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 880</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 881</td> <td class="nbHits"> </td> @@ -1611,7 +1611,7 @@ <td class="src"><pre class="src"> Operations operations)</pre></td></tr> <tr> <td class="numLine"> 884</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 885</td> <td class="nbHitsCovered"> 1806</td> <td class="src"><pre class="src"> <span class="keyword">return</span> target.setAttributes(attributes);</pre></td></tr> +<tr> <td class="numLineCover"> 885</td> <td class="nbHitsCovered"> 1758</td> <td class="src"><pre class="src"> <span class="keyword">return</span> target.setAttributes(attributes);</pre></td></tr> <tr> <td class="numLine"> 886</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 887</td> <td class="nbHits"> </td> @@ -1748,9 +1748,9 @@ <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> <tr> <td class="numLine"> 957</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="keyword">public</span> ChangeNodeNameOperation(String name)</pre></td></tr> -<tr> <td class="numLineCover"> 958</td> <td class="nbHitsCovered"> 1763</td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 959</td> <td class="nbHitsCovered"> 1763</td> <td class="src"><pre class="src"> newName = name;</pre></td></tr> -<tr> <td class="numLineCover"> 960</td> <td class="nbHitsCovered"> 1763</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 958</td> <td class="nbHitsCovered"> 1715</td> <td class="src"><pre class="src"> {</pre></td></tr> +<tr> <td class="numLineCover"> 959</td> <td class="nbHitsCovered"> 1715</td> <td class="src"><pre class="src"> newName = name;</pre></td></tr> +<tr> <td class="numLineCover"> 960</td> <td class="nbHitsCovered"> 1715</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 961</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 962</td> <td class="nbHits"> </td> @@ -1761,7 +1761,7 @@ <td class="src"><pre class="src"> Operations operations)</pre></td></tr> <tr> <td class="numLine"> 965</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 966</td> <td class="nbHitsCovered"> 1763</td> <td class="src"><pre class="src"> <span class="keyword">return</span> target.setName(newName);</pre></td></tr> +<tr> <td class="numLineCover"> 966</td> <td class="nbHitsCovered"> 1715</td> <td class="src"><pre class="src"> <span class="keyword">return</span> target.setName(newName);</pre></td></tr> <tr> <td class="numLine"> 967</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 968</td> <td class="nbHits"> </td> @@ -1776,7 +1776,7 @@ <td class="src"><pre class="src"> <span class="comment"> * on a single node.</span></pre></td></tr> <tr> <td class="numLine"> 973</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> -<tr> <td class="numLineCover"> 974</td> <td class="nbHitsCovered"> 57410</td> <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">class</span> Operations</pre></td></tr> +<tr> <td class="numLineCover"> 974</td> <td class="nbHitsCovered"> 57308</td> <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">class</span> Operations</pre></td></tr> <tr> <td class="numLine"> 975</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> <tr> <td class="numLine"> 976</td> <td class="nbHits"> </td> @@ -1817,10 +1817,10 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> addChildrenOperation(ChildrenUpdateOperation co)</pre></td></tr> <tr> <td class="numLine"> 994</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 995</td> <td class="nbHitsCovered"><a title="Line 995: Conditional coverage 100% (2/2)."> 25654</a></td> <td class="src"><pre class="src"> <a title="Line 995: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (childrenOperation == <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 995</td> <td class="nbHitsCovered"><a title="Line 995: Conditional coverage 100% (2/2)."> 25604</a></td> <td class="src"><pre class="src"> <a title="Line 995: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (childrenOperation == <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 996</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 997</td> <td class="nbHitsCovered"> 25594</td> <td class="src"><pre class="src"> childrenOperation = co;</pre></td></tr> +<tr> <td class="numLineCover"> 997</td> <td class="nbHitsCovered"> 25544</td> <td class="src"><pre class="src"> childrenOperation = co;</pre></td></tr> <tr> <td class="numLine"> 998</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 999</td> <td class="nbHits"> </td> @@ -1830,7 +1830,7 @@ <tr> <td class="numLineCover"> 1001</td> <td class="nbHitsCovered"> 60</td> <td class="src"><pre class="src"> childrenOperation.combine(co);</pre></td></tr> <tr> <td class="numLine"> 1002</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> -<tr> <td class="numLineCover"> 1003</td> <td class="nbHitsCovered"> 25654</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 1003</td> <td class="nbHitsCovered"> 25604</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 1004</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 1005</td> <td class="nbHits"> </td> @@ -1847,8 +1847,8 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> addOperation(Operation op)</pre></td></tr> <tr> <td class="numLine"> 1011</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 1012</td> <td class="nbHitsCovered"> 6688</td> <td class="src"><pre class="src"> operations = append(operations, op);</pre></td></tr> -<tr> <td class="numLineCover"> 1013</td> <td class="nbHitsCovered"> 6688</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 1012</td> <td class="nbHitsCovered"> 6592</td> <td class="src"><pre class="src"> operations = append(operations, op);</pre></td></tr> +<tr> <td class="numLineCover"> 1013</td> <td class="nbHitsCovered"> 6592</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 1014</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 1015</td> <td class="nbHits"> </td> @@ -1869,9 +1869,9 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> newNodesAdded(Collection<ImmutableNode> newNodes)</pre></td></tr> <tr> <td class="numLine"> 1023</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 1024</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> addedNodesInOperation =</pre></td></tr> -<tr> <td class="numLineCover"> 1025</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> concatenate(addedNodesInOperation, newNodes);</pre></td></tr> -<tr> <td class="numLineCover"> 1026</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> }</pre></td></tr> +<tr> <td class="numLineCover"> 1024</td> <td class="nbHitsCovered"> 25543</td> <td class="src"><pre class="src"> addedNodesInOperation =</pre></td></tr> +<tr> <td class="numLineCover"> 1025</td> <td class="nbHitsCovered"> 25543</td> <td class="src"><pre class="src"> concatenate(addedNodesInOperation, newNodes);</pre></td></tr> +<tr> <td class="numLineCover"> 1026</td> <td class="nbHitsCovered"> 25543</td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 1027</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> <tr> <td class="numLine"> 1028</td> <td class="nbHits"> </td> @@ -1898,35 +1898,35 @@ <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">void</span> apply(ImmutableNode target, <span class="keyword">int</span> level)</pre></td></tr> <tr> <td class="numLine"> 1039</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 1040</td> <td class="nbHitsCovered"> 28704</td> <td class="src"><pre class="src"> ImmutableNode node = target;</pre></td></tr> -<tr> <td class="numLineCover"> 1041</td> <td class="nbHitsCovered"><a title="Line 1041: Conditional coverage 100% (2/2)."> 28704</a></td> <td class="src"><pre class="src"> <a title="Line 1041: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (childrenOperation != <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 1040</td> <td class="nbHitsCovered"> 28653</td> <td class="src"><pre class="src"> ImmutableNode node = target;</pre></td></tr> +<tr> <td class="numLineCover"> 1041</td> <td class="nbHitsCovered"><a title="Line 1041: Conditional coverage 100% (2/2)."> 28654</a></td> <td class="src"><pre class="src"> <a title="Line 1041: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (childrenOperation != <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 1042</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr> -<tr> <td class="numLineCover"> 1043</td> <td class="nbHitsCovered"> 25593</td> <td class="src"><pre class="src"> node = childrenOperation.apply(node, <span class="keyword">this</span>);</pre></td></tr> +<tr> <td class="numLineCover"> 1043</td> <td class="nbHitsCovered"> 25543</td> <td class="src"><pre class="src"> node = childrenOperation.apply(node, <span class="keyword">this</span>);</pre></td></tr> <tr> <td class="numLine"> 1044</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> }</pre></td></tr> <tr> <td class="numLine"> 1045</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> </pre></td></tr> -<tr> <td class="numLineCover"> 1046</td> <td class="nbHitsCovered"><a title="Line 1046: Conditional coverage 100% (2/2)."> 28704</a></td> <td class="src"><pre class="src"> <a title="Line 1046: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (operations != <span class="keyword">null</span>)</a></pre></td></tr> +<tr> <td class="numLineCover"> 1046</td> <td class="nbHitsCovered"><a title="Line 1046: Conditional coverage 100% (2/2)."> 28654</a></td> <td class="src"><pre class="src"> <a title="Line 1046: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (operations != <span class="keyword">null</span>)</a></pre></td></tr> <tr> <td class="numLine"> 1047</td> <td class="nbHits"> </td> <td class="src"><pre class="src"> {</pre></td></tr>
[... 70 lines stripped ...]