/** */ protected String getFindRootName(String tagName) { ModelParserAdapter adapter = getParserAdapter(); if (adapter != null) { return adapter.getFindRootName(tagName); } return null; }
/** */ protected boolean canBeImplicitTag(Element element) { ModelParserAdapter adapter = getParserAdapter(); if (adapter != null) { return adapter.canBeImplicitTag(element); } return false; }
/** */ protected boolean canBeImplicitTag(Element element, Node child) { ModelParserAdapter adapter = getParserAdapter(); if (adapter != null) { return adapter.canBeImplicitTag(element, child); } return false; }
/** * This routine create an implicit Element for given parent and child, * such as HTML, BODY, HEAD, and TBODY for HTML document. */ protected Element createImplicitElement(Node parent, Node child) { ModelParserAdapter adapter = getParserAdapter(); if (adapter != null) { return adapter.createImplicitElement(this.model.getDocument(), parent, child); } return null; }
/** */ protected boolean isEndTag(IDOMElement element) { ModelParserAdapter adapter = getParserAdapter(); if (adapter != null) { return adapter.isEndTag(element); } return element.isEndTag(); }
/** */ protected boolean canContain(Element element, Node child) { if (element == null || child == null) return false; ElementImpl impl = (ElementImpl) element; if (impl.isEndTag()) return false; // invalid (floating) end tag if (!impl.isContainer()) return false; if (child.getNodeType() != Node.TEXT_NODE) { if (impl.isJSPContainer() || impl.isCDATAContainer()) { // accepts only Text child return false; } } ModelParserAdapter adapter = getParserAdapter(); if (adapter != null) { return adapter.canContain(element, child); } return true; }
/** * This routine create an Element from comment data for comment style * elements, such as SSI and METADATA */ protected Element createCommentElement(String data, boolean isJSPTag) { String trimmedData = data.trim(); CommentElementConfiguration[] configs = CommentElementRegistry.getInstance().getConfigurations(); for (int iConfig = 0; iConfig < configs.length; iConfig++) { CommentElementConfiguration config = configs[iConfig]; if ((isJSPTag && !config.acceptJSPComment()) || (!isJSPTag && !config.acceptXMLComment())) { continue; } String[] prefixes = config.getPrefix(); for (int iPrefix = 0; iPrefix < prefixes.length; iPrefix++) { if (trimmedData.startsWith(prefixes[iPrefix])) { return config.createElement(this.model.getDocument(), data, isJSPTag); } } } ModelParserAdapter adapter = getParserAdapter(); if (adapter != null) { return adapter.createCommentElement(this.model.getDocument(), data, isJSPTag); } return null; }