public StreamBuilder endElement() { current = current instanceof Element ? ((Element)current).getParentElement() : null; return this; }
public StreamBuilder endElement() { current = current instanceof Element ? ((Element)current).getParentElement() : null; return this; }
@SuppressWarnings("unchecked") public <T extends Base> T getParentElement() { return (T) internal.getParentElement(); }
public <T extends Base> T getParentElement() { return (T)internal.getParentElement(); }
private static boolean needToWriteLang(Element element) { String parentlang = null; if (element.getParentElement() != null) { Base parent = element.getParentElement(); parentlang = parent instanceof Document ? ((Document)parent).getLanguage() : ((Element)parent).getLanguage(); } String lang = element.getLanguage(); return (parentlang == null && lang != null) || (lang != null && parentlang != null && !parentlang .equalsIgnoreCase(lang)); }
private static boolean needToWriteDir(Element element) { Direction parentdir = Direction.UNSPECIFIED; Direction dir = BidiHelper.getDirection(element); if (element.getParentElement() != null) { Base parent = element.getParentElement(); if (parent instanceof Element) parentdir = BidiHelper.getDirection((Element)parent); } return dir != Direction.UNSPECIFIED && !dir.equals(parentdir); }
private static <T extends Element> boolean hasDirection(T element) { String dir = element.getAttributeValue("dir"); if (dir != null && dir.length() > 0) return true; else if (dir == null) { // if the direction is unspecified on this element, // let's see if we've inherited it Base parent = element.getParentElement(); if (parent != null && parent instanceof Element) return hasDirection((Element)parent); } return false; } }
/** * Get the in-scope direction for an element. */ public static <T extends Element> Direction getDirection(T element) { Direction direction = Direction.UNSPECIFIED; String dir = element.getAttributeValue("dir"); if (dir != null && dir.length() > 0) direction = Direction.valueOf(dir.toUpperCase()); else if (dir == null) { // if the direction is unspecified on this element, // let's see if we've inherited it Base parent = element.getParentElement(); if (parent != null && parent instanceof Element) direction = getDirection((Element)parent); } return direction; }
private static boolean isSameAsParentBase(Element element) { IRI parentbase = null; if (element.getParentElement() != null) { parentbase = element instanceof Document ? ((Document)element).getBaseUri() : ((Element)element) .getResolvedBaseUri(); } IRI base = element.getResolvedBaseUri(); if (parentbase == null && base != null) { return false; } if (parentbase == null && base == null) { return true; } return parentbase.equals(element.getResolvedBaseUri()); }