org.apache.maven.doxia.util
Class HtmlTools

java.lang.Object
  extended by org.apache.maven.doxia.util.HtmlTools

public class HtmlTools
extends Object

The HtmlTools class defines methods to HTML handling.

Since:
1.0
Version:
$Id: HtmlTools.java 1185112 2011-10-17 11:33:00Z ltheussl $
Author:
Vincent Siveton

Method Summary
static String encodeId(String id)
          Construct a valid id.
static String encodeURL(String url)
          Encode an url
static String escapeHTML(String text)
          Escape special HTML characters in a String in xml mode.
static String escapeHTML(String text, boolean xmlMode)
          Escape special HTML characters in a String.
static HTML.Tag getHtmlTag(String tagName)
          Returns a tag for a defined HTML tag name.
static boolean isId(String text)
          Determines if the specified text is a valid id according to the rules laid out in encodeId(String).
static char[] toChars(int codePoint)
          Converts the given code point to an equivalent character array.
static String unescapeHTML(String text)
          Unescapes HTML entities in a string in non xml mode.
static String unescapeHTML(String text, boolean xmlMode)
          Unescapes HTML entities in a string.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getHtmlTag

public static HTML.Tag getHtmlTag(String tagName)
Returns a tag for a defined HTML tag name. This is one of the tags defined in HtmlMarkup. If the given name does not represent one of the defined tags, then null will be returned.

Parameters:
tagName - the String name requested.
Returns:
a tag constant corresponding to the tagName, or null if not found.
Since:
1.1
See Also:
http://www.w3.org/TR/html401/index/elements.html

escapeHTML

public static String escapeHTML(String text)
Escape special HTML characters in a String in xml mode. Note: this method doesn't escape non-ascii characters by numeric characters references.

Parameters:
text - the String to escape, may be null.
Returns:
The escaped text or the empty string if text == null.
See Also:
escapeHTML(String,boolean)

escapeHTML

public static String escapeHTML(String text,
                                boolean xmlMode)
Escape special HTML characters in a String.
 < becomes &lt;
 > becomes &gt;
 & becomes &amp;
 " becomes &quot;
 ' becomes &apos; if xmlMode = true
 
If xmlMode is true, every other character than the above remains unchanged, if xmlMode is false, non-ascii characters get replaced by their hex code. Note: all characters are encoded, i.e.:
 ř       = &#x159;
 𝟭 = &#x1d7ed;
 

Parameters:
text - The String to escape, may be null.
xmlMode - true to replace also ' to &apos, false to replace non-ascii characters by numeric characters references.
Returns:
The escaped text or the empty string if text == null.
Since:
1.1
See Also:
http://www.w3.org/TR/2000/REC-xml-20001006#sec-predefined-ent, http://www.w3.org/TR/html401/charset.html#h-5.3

unescapeHTML

public static String unescapeHTML(String text)
Unescapes HTML entities in a string in non xml mode.

Parameters:
text - the String to unescape, may be null.
Returns:
a new unescaped String, null if null string input.
Since:
1.1.1.
See Also:
unescapeHTML(String, boolean)

unescapeHTML

public static String unescapeHTML(String text,
                                  boolean xmlMode)
Unescapes HTML entities in a string.

Unescapes a string containing entity escapes to a string containing the actual Unicode characters corresponding to the escapes. Supports HTML 4.0 entities.

For example, the string "&lt;Fran&ccedil;ais&gt;" will become "<Français>".

Note: all unicode entities are decoded, i.e.:
 &#x159;   = ř
 &#x1d7ed; = 𝟭
 

Parameters:
text - the String to unescape, may be null.
xmlMode - set to true to replace &apos by '.
Returns:
a new unescaped String, null if null string input.
Since:
1.1.1.

encodeURL

public static String encodeURL(String url)
Encode an url

Parameters:
url - the String to encode, may be null
Returns:
the text encoded, null if null String input

encodeId

public static String encodeId(String id)
Construct a valid id.

Note: this method is identical to DoxiaUtils.encodeId( id, true), the rules to encode an id are laid out there.

Parameters:
id - The id to be encoded.
Returns:
The trimmed and encoded id, or null if id is null.
See Also:
DoxiaUtils.encodeId(java.lang.String,boolean)

isId

public static boolean isId(String text)
Determines if the specified text is a valid id according to the rules laid out in encodeId(String).

Parameters:
text - The text to be tested.
Returns:
true if the text is a valid id, otherwise false.
See Also:
encodeId(String).

toChars

public static char[] toChars(int codePoint)
Converts the given code point to an equivalent character array.

Parameters:
codePoint - the code point to convert.
Returns:
If codePoint is a supplementary code point, returns a character array of length 2, otherwise a character array of length 1 containing only the original int as a char.


Copyright © 2005-2012 The Apache Software Foundation. All Rights Reserved.