public void closeStartGroupingElements(XPathFragment groupingFragment) { if (null != groupingFragment) { this.closeStartElement(); } }
public void closeStartGroupingElements(XPathFragment groupingFragment) { if (null != groupingFragment) { this.closeStartElement(); } }
public void closeStartGroupingElements(XPathFragment groupingFragment) { if (null != groupingFragment) { this.closeStartElement(); } }
@Override public void closeStartElement() { validatingRecord.closeStartElement(); marshalRecord.closeStartElement(); }
@Override public void closeStartElement() { validatingRecord.closeStartElement(); marshalRecord.closeStartElement(); }
public void startElement(String namespaceURI, String localName, String qName, Attributes atts) throws SAXException { Element element; if (namespaceURI == null) { element = document.createElement(qName); } else { element = document.createElementNS(namespaceURI, qName); } node = node.appendChild(element); // Handle attributes for (int i = 0; i < atts.getLength(); i++) { marshalRecord.attribute(atts.getURI(i), atts.getLocalName(i), atts.getQName(i), atts.getValue(i)); } // Handle prefix mappings if (!prefixMappings.isEmpty()) { for (Iterator<Map.Entry<String, String>> entries = prefixMappings.entrySet().iterator(); entries.hasNext();) { Map.Entry<String, String> entry = entries.next(); element.setAttributeNS(XMLConstants.XMLNS_URL, XMLConstants.XMLNS + XMLConstants.COLON + entry.getKey(), entry.getValue()); } prefixMappings.clear(); } marshalRecord.closeStartElement(); }
public void startElement(String namespaceURI, String localName, String qName, Attributes atts) throws SAXException { XPathFragment frag = new XPathFragment(qName); marshalRecord.openStartElement(frag, resolver); for (int i = 0; i < atts.getLength(); i++) { marshalRecord.attribute(atts.getURI(i), atts.getLocalName(i), atts.getQName(i), atts.getValue(i)); } marshalRecord.closeStartElement(); }
/** * INTERNAL: * Trigger that the grouping elements should be written. This is normally * done when something like a mapping has a non-null value that is * marshalled. * @param namespaceResolver The NamespaceResolver can be used to resolve the * namespace URI for the namespace prefix held by the XPathFragment (if * required). */ public XPathFragment openStartGroupingElements(NamespaceResolver namespaceResolver) { if (null == groupingElements) { return null; } XPathFragment xPathFragment = null; for (int x = 0, groupingElementsSize = groupingElements.size(); x < groupingElementsSize; x++) { XPathNode xPathNode = groupingElements.get(x); xPathFragment = xPathNode.getXPathFragment(); openStartElement(xPathFragment, namespaceResolver); if (x != (groupingElementsSize - 1)) { closeStartElement(); } } groupingElements = null; return xPathFragment; }
/** * INTERNAL: * Trigger that the grouping elements should be written. This is normally * done when something like a mapping has a non-null value that is * marshalled. * @param namespaceResolver The NamespaceResolver can be used to resolve the * namespace URI for the namespace prefix held by the XPathFragment (if * required). */ public XPathFragment openStartGroupingElements(NamespaceResolver namespaceResolver) { if (null == groupingElements) { return null; } XPathFragment xPathFragment = null; for (int x = 0, groupingElementsSize = groupingElements.size(); x < groupingElementsSize; x++) { XPathNode xPathNode = groupingElements.get(x); xPathFragment = xPathNode.getXPathFragment(); openStartElement(xPathFragment, namespaceResolver); predicateAttribute(xPathFragment, namespaceResolver); if (x != (groupingElementsSize - 1)) { closeStartElement(); } } groupingElements = null; return xPathFragment; }
/** * INTERNAL: * Trigger that the grouping elements should be written. This is normally * done when something like a mapping has a non-null value that is * marshalled. * @param namespaceResolver The NamespaceResolver can be used to resolve the * namespace URI for the namespace prefix held by the XPathFragment (if * required). */ public XPathFragment openStartGroupingElements(NamespaceResolver namespaceResolver) { if (null == groupingElements) { return null; } XPathFragment xPathFragment = null; for (int x = 0, groupingElementsSize = groupingElements.size(); x < groupingElementsSize; x++) { XPathNode xPathNode = groupingElements.get(x); xPathFragment = xPathNode.getXPathFragment(); openStartElement(xPathFragment, namespaceResolver); predicateAttribute(xPathFragment, namespaceResolver); if (x != (groupingElementsSize - 1)) { closeStartElement(); } } groupingElements = null; return xPathFragment; }
/** * Used when an nil attribute should be written * @since EclipseLink 2.4 */ public void emptyComplex(XPathFragment xPathFragment, NamespaceResolver namespaceResolver){ XPathFragment groupingFragment = openStartGroupingElements(namespaceResolver); closeStartGroupingElements(groupingFragment); openStartElement(xPathFragment, namespaceResolver); closeStartElement(); endElement(xPathFragment, namespaceResolver); }
/** * Used when an nil attribute should be written * @since EclipseLink 2.4 */ public void emptyComplex(XPathFragment xPathFragment, NamespaceResolver namespaceResolver){ XPathFragment groupingFragment = openStartGroupingElements(namespaceResolver); closeStartGroupingElements(groupingFragment); openStartElement(xPathFragment, namespaceResolver); closeStartElement(); endElement(xPathFragment, namespaceResolver); }
public boolean startElement(MarshalRecord marshalRecord, XPathFragment anXPathFragment, Object object, AbstractSession session, NamespaceResolver namespaceResolver, TreeObjectBuilder compositeObjectBuilder, Object compositeObject) { if (null == anXPathFragment) { return false; } marshalRecord.openStartElement(anXPathFragment, namespaceResolver); boolean hasValue = false; if (null != attributeChildren) { for (int x = 0, size = attributeChildren.size(); x < size; x++) { XPathNode attributeNode = (XPathNode)attributeChildren.get(x); hasValue = attributeNode.marshal(marshalRecord, object, session, namespaceResolver, null, ObjectMarshalContext.getInstance()) || hasValue; } } if (anyAttributeNode != null) { //marshal the anyAttribute node here before closeStartElement() hasValue = anyAttributeNode.marshal(marshalRecord, object, session, namespaceResolver, null, ObjectMarshalContext.getInstance()) || hasValue; } if (null != compositeObjectBuilder) { hasValue = compositeObjectBuilder.marshalAttributes(marshalRecord, compositeObject, session) || hasValue; } marshalRecord.closeStartElement(); return hasValue; }
@Override public boolean marshalSingleValue(XPathFragment xPathFragment, MarshalRecord marshalRecord, Object object, Object value, AbstractSession session, NamespaceResolver namespaceResolver, MarshalContext marshalContext) { Object fieldValue = xmlCollectionReferenceMapping.buildFieldValue(value, xmlField, session); if (fieldValue == null) { if(null != value) { XMLField f2 = (XMLField) xmlCollectionReferenceMapping.getSourceToTargetKeyFieldAssociations().get(xmlField); fieldValue = marshalRecord.getMarshaller().getXMLContext().getValueByXPath(value, f2.getXPath(), f2.getNamespaceResolver(), Object.class); } if(null == fieldValue) { return false; } } QName schemaType = getSchemaType(xmlField, fieldValue, session); String stringValue = getValueToWrite(schemaType, fieldValue, (XMLConversionManager) session.getDatasourcePlatform().getConversionManager(), namespaceResolver); if (stringValue != null) { if (xPathFragment.isAttribute()) { marshalRecord.attribute(xPathFragment, namespaceResolver, stringValue); marshalRecord.closeStartElement(); } else { marshalRecord.closeStartElement(); marshalRecord.characters(stringValue); } return true; } return false; }
/** * Used when an nil attribute should be written * @since EclipseLink 2.4 */ public void nilComplex(XPathFragment xPathFragment, NamespaceResolver namespaceResolver){ XPathFragment groupingFragment = openStartGroupingElements(namespaceResolver); closeStartGroupingElements(groupingFragment); openStartElement(xPathFragment, namespaceResolver); String xsiPrefix = processNamespaceResolverForXSIPrefix(namespaceResolver); XPathFragment nilFragment = new XPathFragment(Constants.ATTRIBUTE + xsiPrefix + COLON_W_SCHEMA_NIL_ATTRIBUTE); nilFragment.setNamespaceURI(javax.xml.XMLConstants.W3C_XML_SCHEMA_INSTANCE_NS_URI); attribute(nilFragment, namespaceResolver, TRUE); closeStartElement(); endElement(xPathFragment, namespaceResolver); }
/** * Used when an nil attribute should be written * @since EclipseLink 2.4 */ public void nilComplex(XPathFragment xPathFragment, NamespaceResolver namespaceResolver){ XPathFragment groupingFragment = openStartGroupingElements(namespaceResolver); closeStartGroupingElements(groupingFragment); openStartElement(xPathFragment, namespaceResolver); String xsiPrefix = processNamespaceResolverForXSIPrefix(namespaceResolver); XPathFragment nilFragment = new XPathFragment(Constants.ATTRIBUTE + xsiPrefix + COLON_W_SCHEMA_NIL_ATTRIBUTE); nilFragment.setNamespaceURI(javax.xml.XMLConstants.W3C_XML_SCHEMA_INSTANCE_NS_URI); attribute(nilFragment, namespaceResolver, TRUE); closeStartElement(); endElement(xPathFragment, namespaceResolver); }
nilFragment.setNamespaceURI(XMLConstants.SCHEMA_INSTANCE_URL); marshalRecord.attribute(nilFragment, namespaceResolver, TRUE); marshalRecord.closeStartElement(); marshalRecord.endElement(xPathFragment, namespaceResolver); return true; marshalRecord.closeStartGroupingElements(groupingFragment); marshalRecord.openStartElement(xPathFragment, namespaceResolver); marshalRecord.closeStartElement(); marshalRecord.endElement(xPathFragment, namespaceResolver); return true;
if (nextFragment.isAttribute()) { marshalRecord.attribute(nextFragment, namespaceResolver, stringValue); marshalRecord.closeStartElement(); } else { marshalRecord.closeStartElement(); marshalRecord.characters(stringValue);
if (nextFragment.isAttribute()) { marshalRecord.attribute(nextFragment, namespaceResolver, stringValue); marshalRecord.closeStartElement(); } else { if (xmlField.isTypedTextField()) { updateNamespaces(schemaType, marshalRecord, xmlField); marshalRecord.closeStartElement(); if (xmlCompositeDirectCollectionMapping.isCDATA()) { marshalRecord.cdata(stringValue);