|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jasig.portal.serialize.HTMLdtd
public final class HTMLdtd
Utility class for accessing information specific to HTML documents.
The HTML DTD is expressed as three utility function groups. Two methods
allow for checking whether an element requires an open tag on printing
(isEmptyTag(java.lang.String)
) or on parsing (isOptionalClosing(java.lang.String)
).
Two other methods translate character references from name to value and from value to name. A small entities resource is loaded into memory the first time any of these methods is called for fast and efficient access.
Field Summary | |
---|---|
private static java.util.Map |
_boolAttrs
|
private static java.util.Map |
_byName
Table of entity name to value mapping. |
private static java.util.Map |
_elemDefs
Holds element definitions. |
private static java.lang.String[] |
_entity
Table of reverse character reference mapping. |
private static int |
ALLOWED_HEAD
Allowed to appear in head. |
private static int |
CLOSE_DD_DT
When opened, closes DD or DT. |
private static int |
CLOSE_P
When opened, closes P. |
private static int |
CLOSE_SELF
When opened, closes itself. |
private static int |
CLOSE_TABLE
When opened, closes another table section. |
private static int |
CLOSE_TH_TD
When opened, closes TH or TD. |
private static int |
ELEM_CONTENT
Element contains element content only. |
private static int |
EMPTY
Element is empty (also means only opening tag) |
private static java.lang.String |
ENTITIES_RESOURCE
Locates the HTML entities file that is loaded upon initialization. |
static java.lang.String |
HTMLPublicId
Public identifier for HTML 4.01 (Strict) document type. |
static java.lang.String |
HTMLSystemId
System identifier for HTML 4.01 (Strict) document type. |
private static int |
ONLY_OPENING
Only opening tag should be printed. |
private static int |
OPT_CLOSING
Optional closing tag. |
private static int |
PRESERVE
Element preserve spaces. |
static java.lang.String |
XHTMLPublicId
Public identifier for XHTML 1.0 (Strict) document type. |
static java.lang.String |
XHTMLSystemId
System identifier for XHTML 1.0 (Strict) document type. |
Constructor Summary | |
---|---|
HTMLdtd()
|
Method Summary | |
---|---|
static int |
charFromName(java.lang.String name)
Returns the value of an HTML character reference by its name. |
private static void |
defineBoolean(java.lang.String tagName,
java.lang.String attrName)
|
private static void |
defineBoolean(java.lang.String tagName,
java.lang.String[] attrNames)
|
private static void |
defineElement(java.lang.String name,
int flags)
|
private static void |
defineEntity(java.lang.String name,
char value)
Defines a new character reference. |
static java.lang.String |
fromChar(int value)
Returns the name of an HTML character reference based on its character value. |
private static void |
initialize()
Initialize upon first access. |
static boolean |
isBoolean(java.lang.String tagName,
java.lang.String attrName)
Returns true if the specified attribute is a boolean and should be printed without the value. |
static boolean |
isClosing(java.lang.String tagName,
java.lang.String openTag)
Returns true if the opening of one element (tagName) implies the closing of another open element (openTag). |
private static boolean |
isElement(java.lang.String name,
int flag)
|
static boolean |
isElementContent(java.lang.String tagName)
Returns true if element is declared to have element content. |
static boolean |
isEmptyTag(java.lang.String tagName)
Returns true if element is declared to be empty. |
static boolean |
isOnlyOpening(java.lang.String tagName)
Returns true if element's closing tag is generally not printed. |
static boolean |
isOptionalClosing(java.lang.String tagName)
Returns true if element's closing tag is optional and need not exist. |
static boolean |
isPreserveSpace(java.lang.String tagName)
Returns true if element's textual contents preserves spaces. |
static boolean |
isURI(java.lang.String tagName,
java.lang.String attrName)
Returns true if the specified attribute it a URI and should be escaped appropriately. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String HTMLPublicId
public static final java.lang.String HTMLSystemId
public static final java.lang.String XHTMLPublicId
public static final java.lang.String XHTMLSystemId
private static java.lang.String[] _entity
private static java.util.Map _byName
private static java.util.Map _boolAttrs
private static java.util.Map _elemDefs
private static final java.lang.String ENTITIES_RESOURCE
private static final int ONLY_OPENING
private static final int ELEM_CONTENT
private static final int PRESERVE
private static final int OPT_CLOSING
private static final int EMPTY
private static final int ALLOWED_HEAD
private static final int CLOSE_P
private static final int CLOSE_DD_DT
private static final int CLOSE_SELF
private static final int CLOSE_TABLE
private static final int CLOSE_TH_TD
Constructor Detail |
---|
public HTMLdtd()
Method Detail |
---|
public static boolean isEmptyTag(java.lang.String tagName)
tagName
- The element tag name (upper case)
public static boolean isElementContent(java.lang.String tagName)
tagName
- The element tag name (upper case)
public static boolean isPreserveSpace(java.lang.String tagName)
tagName
- The element tag name (upper case)
public static boolean isOptionalClosing(java.lang.String tagName)
tagName
- The element tag name (upper case)
public static boolean isOnlyOpening(java.lang.String tagName)
tagName
- The element tag name (upper case)
public static boolean isClosing(java.lang.String tagName, java.lang.String openTag)
tagName
- The newly opened elementopenTag
- The already opened element
public static boolean isURI(java.lang.String tagName, java.lang.String attrName)
tagName
- The element's tag nameattrName
- The attribute's namepublic static boolean isBoolean(java.lang.String tagName, java.lang.String attrName)
tagName
- The element's tag nameattrName
- The attribute's namepublic static int charFromName(java.lang.String name)
name
- Name of character reference
public static java.lang.String fromChar(int value)
value
- Character value of entity
private static void initialize()
private static void defineEntity(java.lang.String name, char value)
Unlike internal entities, character references are a string to single character mapping. They are used to map non-ASCII characters both on parsing and printing, primarily for HTML documents. '<amp;' is an example of a character reference.
name
- The entity's namevalue
- The entity's valueprivate static void defineElement(java.lang.String name, int flags)
private static void defineBoolean(java.lang.String tagName, java.lang.String attrName)
private static void defineBoolean(java.lang.String tagName, java.lang.String[] attrNames)
private static boolean isElement(java.lang.String name, int flag)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |