Clover Coverage Report - XWiki Rendering - Parent POM 4.0-SNAPSHOT (Aggregated)
Coverage timestamp: Mon Mar 12 2012 18:03:13 CET
../../../../img/srcFileCovDistChart10.png 0% of files have more coverage
3   50   3   3
2   14   1   1
1     3  
1    
 
  ParserUtils       Line # 33 3 0% 3 0 100% 1.0
 
  (13)
 
1    /*
2    * See the NOTICE file distributed with this work for additional
3    * information regarding copyright ownership.
4    *
5    * This is free software; you can redistribute it and/or modify it
6    * under the terms of the GNU Lesser General Public License as
7    * published by the Free Software Foundation; either version 2.1 of
8    * the License, or (at your option) any later version.
9    *
10    * This software is distributed in the hope that it will be useful,
11    * but WITHOUT ANY WARRANTY; without even the implied warranty of
12    * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13    * Lesser General Public License for more details.
14    *
15    * You should have received a copy of the GNU Lesser General Public
16    * License along with this software; if not, write to the Free
17    * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
18    * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
19    */
20    package org.xwiki.rendering.util;
21   
22    import java.util.List;
23   
24    import org.xwiki.rendering.block.Block;
25    import org.xwiki.rendering.block.ParagraphBlock;
26   
27    /**
28    * Methods for helping in parsing.
29    *
30    * @version $Id$
31    * @since 1.7M1
32    */
 
33    public class ParserUtils
34    {
35    /**
36    * Removes any top level paragraph since for example for the following use case we don't want an extra paragraph
37    * block: <code>= hello {{velocity}}world{{/velocity}}</code>.
38    *
39    * @param blocks the blocks to check and convert
40    */
 
41  64 toggle public void removeTopLevelParagraph(List<Block> blocks)
42    {
43    // Remove any top level paragraph so that the result of a macro can be used inline for example.
44    // We only remove the paragraph if there's only one top level element and if it's a paragraph.
45  64 if ((blocks.size() == 1) && blocks.get(0) instanceof ParagraphBlock) {
46  60 Block paragraphBlock = blocks.remove(0);
47  60 blocks.addAll(0, paragraphBlock.getChildren());
48    }
49    }
50    }