Class EmptyElementHandler.SetEmptyElementHandler

  • All Implemented Interfaces:
    EmptyElementHandler
    Direct Known Subclasses:
    EmptyElementHandler.HtmlEmptyElementHandler
    Enclosing interface:
    EmptyElementHandler

    public static class EmptyElementHandler.SetEmptyElementHandler
    extends java.lang.Object
    implements EmptyElementHandler
    Handler that uses a Set of Strings. If the local part of the element's QName is contained in the Set the element is allowed to be empty.

    Users of this class are encouraged to use a TreeSet with the String.CASE_INSENSITIVE_ORDER comparator if case-insensitive comparison is needed (like when dealing with HTML tags).

    • Field Detail

      • mEmptyElements

        protected final java.util.Set<java.lang.String> mEmptyElements
    • Constructor Detail

      • SetEmptyElementHandler

        public SetEmptyElementHandler​(java.util.Set<java.lang.String> emptyElements)
    • Method Detail

      • allowEmptyElement

        public boolean allowEmptyElement​(java.lang.String prefix,
                                         java.lang.String localName,
                                         java.lang.String nsURI,
                                         boolean allowEmpty)
        Specified by:
        allowEmptyElement in interface EmptyElementHandler
        Parameters:
        prefix - The element's namespace prefix, null if not set
        localName - The element's local name
        nsURI - The elements's namespace URI, null if not set
        allowEmpty - The allow empty setting specified by the caller.
        Returns:
        True if the empty element can be self-closing. False if a separate end tag should be written.