List of usage examples for org.w3c.dom Element setUserData
public Object setUserData(String key, Object data, UserDataHandler handler);
From source file:de.betterform.xml.xforms.model.constraints.RelevanceSelector.java
private static void addElement(Element relevantParent, Node instanceNode) { Document relevantDocument = relevantParent.getOwnerDocument(); Element relevantElement; if (instanceNode.getNamespaceURI() == null) { relevantElement = relevantDocument.createElement(instanceNode.getNodeName()); } else {//from w w w .j a va2 s . c o m relevantElement = relevantDocument.createElementNS(instanceNode.getNamespaceURI(), instanceNode.getNodeName()); } // needed in instance serializer ... relevantElement.setUserData("", instanceNode.getUserData(""), null); relevantParent.appendChild(relevantElement); addAttributes(relevantElement, instanceNode); addChildren(relevantElement, instanceNode); }
From source file:com.predic8.membrane.annot.parser.BlueprintElementParser.java
protected void parseChildren(Element element, ParserContext context, MutableBeanMetadata mcm, BlueprintParser globalParser) {//w ww . j a va2 s .c o m element.setUserData(BlueprintNamespaceParser.KEY_PARENT_CLASS_NAME, mcm.getRuntimeClass().getName(), null); NodeList nl = element.getChildNodes(); for (int i = 0; i < nl.getLength(); i++) { Node node = nl.item(i); if (node instanceof Element) { handleChildElement((Element) node, context, mcm, globalParser); } } }
From source file:org.solmix.runtime.support.spring.ContainerDefinitionParser.java
@Override protected String resolveId(Element element, AbstractBeanDefinition definition, ParserContext ctx) { String container = null;/*from w w w . j av a2s . c o m*/ try { container = (String) element.getUserData("ID"); } catch (Throwable t) { // ignore } if (container == null) { container = element.getAttribute("name"); if (StringUtils.isEmpty(container)) { container = Container.DEFAULT_CONTAINER_ID + ".config" + counter.getAndIncrement(); } else { container = container + ".config"; } try { element.setUserData("ID", container, null); } catch (Throwable t) { // maybe no DOM level 3, ignore, but, may have issues with the // counter } } return container; }
From source file:com.bstek.dorado.view.config.XmlDocumentPreprocessor.java
private boolean processImports(List<Element> elements, PreparseContext preparseContext) throws Exception { boolean changed = false; for (Element childElement : elements.toArray(new Element[0])) { String nodeName = childElement.getNodeName(); if (XmlConstants.IMPORT.equals(nodeName)) { List<Element> importContent = getImportContent(childElement, preparseContext); if (importContent != null) { childElement.setUserData("dorado.replace", importContent, null); }//from ww w . ja va 2 s. com childElement.setUserData("dorado.delete", importContent, null); changed = true; } } return changed; }
From source file:de.betterform.xml.xforms.CustomElementFactory.java
/** * Factory method for custom element implementations. * // www .j av a 2 s . co m * @param element * The DOM Element which will be annotated. * @param model * The owning model. * @return The created object. */ public Object createCustomXFormsElement(Element element, Model model) throws XFormsException { //gets the class reference String key = getKeyForElement(element); Class elementClazz = (Class) ELEMENTS.get(key); //this should never happen if (elementClazz == null) { throw new XFormsException("No class defined for " + key); } if (elementClazz != null) { try { //initializes a new object from the class Object xformsElement = elementClazz.getConstructor(new Class[] { Element.class, Model.class }) .newInstance(new Object[] { (Element) element, model }); if (xformsElement instanceof AbstractUIElement) { element.setUserData("", (AbstractUIElement) xformsElement, null); return (AbstractUIElement) xformsElement; } if (xformsElement instanceof AbstractAction) { element.setUserData("", (AbstractAction) xformsElement, null); return (AbstractAction) xformsElement; } } catch (Exception e) { throw new XFormsException(e); } } LOGGER.warn("Custom class for " + key + " not does not extend AbstractUIElement or AbstractAction"); return null; }
From source file:com.bstek.dorado.view.config.XmlDocumentPreprocessor.java
private boolean processPlaceHolders(List<Element> elements, TemplateContext templateContext) throws Exception { boolean changed = false; List<Element> defaultContent = null; Element placeHolderStartElement = null; for (Element childElement : elements.toArray(new Element[0])) { String nodeName = childElement.getNodeName(); if (XmlConstants.PLACE_HOLDER.equals(nodeName)) { List<Element> concreteContent = getPlaceHolderContent(childElement, templateContext); if (concreteContent != null) { childElement.setUserData("dorado.replace", concreteContent, null); }/*from w w w . j a v a 2 s . co m*/ childElement.setUserData("dorado.delete", concreteContent, null); changed = true; } else if (XmlConstants.PLACE_HOLDER_START.equals(nodeName)) { if (templateContext.isInPlaceHolderSection()) { throw new XmlParseException("Nesting <PlaceHolderStart> not supported.", childElement, templateContext); } else { templateContext.setInPlaceHolderSection(true); defaultContent = new ArrayList<Element>(); placeHolderStartElement = childElement; } changed = true; } else if (XmlConstants.PLACE_HOLDER_END.equals(nodeName)) { if (placeHolderStartElement == null) { throw new XmlParseException("<PlaceHolderStart> missed.", childElement, templateContext); } else { List<Element> placeHolderContent = getPlaceHolderContent(childElement, templateContext); if (placeHolderContent != null) { placeHolderStartElement.setUserData("dorado.replace", placeHolderContent, null); for (Element el : defaultContent) { el.setUserData("dorado.delete", Boolean.TRUE, null); } } placeHolderStartElement.setUserData("dorado.delete", Boolean.TRUE, null); childElement.setUserData("dorado.delete", Boolean.TRUE, null); templateContext.setInPlaceHolderSection(false); placeHolderStartElement = null; defaultContent = null; } changed = true; } else { processPlaceHolders(childElement, templateContext); } } return changed; }
From source file:com.twinsoft.convertigo.beans.core.Step.java
protected Node createStepNode() throws EngineException { Document doc = getOutputDocument(); Element stepNode = doc.createElement(getStepNodeName()); stepNode.setUserData(NODE_USERDATA_OUTPUT, String.valueOf(isOutput()), null); if (!inError()) { createStepNodeValue(doc, stepNode); }/*from w ww .j ava 2 s . c o m*/ return stepNode; }
From source file:org.solmix.runtime.support.spring.ContainerDefinitionParser.java
@Override protected void doParse(Element element, ParserContext ctx, BeanDefinitionBuilder bean) { String cname = element.getAttribute("name"); String id = element.getAttribute("id"); //container name if (StringUtils.isEmpty(cname)) { // idname if (!StringUtils.isEmpty(id)) { cname = id;/*ww w. j a va 2 s . c om*/ } else { cname = "solmix"; } } super.doParse(element, ctx, bean); if (ctx.getRegistry().containsBeanDefinition(cname)) { BeanDefinition def = ctx.getRegistry().getBeanDefinition(cname); copyProps(bean, def); bean.addConstructorArgValue(cname); } else if (!"solmix".equals(cname)) { bean.getRawBeanDefinition().setBeanClass(SpringContainer.class); bean.setDestroyMethodName("close"); try { element.setUserData("ID", cname, null); } catch (Throwable t) { //ignore } } else { addContainerWiringAttribute(bean, true, cname, ctx); bean.getRawBeanDefinition().setAttribute(WIRE_CONTAINER_CREATE, resolveId(element, null, ctx)); bean.addConstructorArgValue(cname); } }
From source file:com.twinsoft.convertigo.beans.core.Sequence.java
public synchronized void flushStepDocument(String executeTimeID, Document doc) { Element stepElement = findStepElement(executeTimeID); if (stepElement == null) { stepElement = context.outputDocument.getDocumentElement(); }/*from ww w.j av a2 s.c o m*/ stepElement.appendChild(context.outputDocument.importNode(doc.getDocumentElement(), true)); if ("false".equals(stepElement.getUserData(Step.NODE_USERDATA_OUTPUT))) { stepElement.setUserData(Step.NODE_USERDATA_OUTPUT, "none", null); } }
From source file:org.apache.shindig.gadgets.templates.tags.FlashTagHandler.java
/** * Ensure that the swfobject JS is inlined *//*from www . j ava2 s. co m*/ void ensureSwfobject(Document doc, TemplateProcessor processor) { // TODO: This should probably be a function of the rewriter. Element head = (Element) DomUtil.getFirstNamedChildNode(doc.getDocumentElement(), "head"); NodeList childNodes = head.getChildNodes(); for (int i = 0; i < childNodes.getLength(); i++) { Node node = childNodes.item(i); if (node.getUserData(SWFOBJECT) != null) { return; } } Element swfobject = doc.createElement("script"); swfobject.setAttribute("type", "text/javascript"); List<FeatureResource> resources = featureRegistry.getFeatureResources( processor.getTemplateContext().getGadget().getContext(), ImmutableSet.of(SWFOBJECT), null); for (FeatureResource resource : resources) { // Emits all content for feature SWFOBJECT, which has no downstream dependencies. swfobject.setTextContent(resource.getContent()); } swfobject.setUserData(SWFOBJECT, SWFOBJECT, null); head.appendChild(swfobject); SanitizingGadgetRewriter.bypassSanitization(swfobject, false); }