public void initialize(AbstractSession session) throws DescriptorException { super.initialize(session); ((XMLField)getField()).setIsCDATA(this.isCDATA()); }
public void initialize(AbstractSession session) throws DescriptorException { super.initialize(session); ((XMLField)getField()).setIsCDATA(this.isCDATA()); String xpathString = ((XMLField)getField()).getXPath(); if (this.isAbstractDirectMapping() && (xpathString.indexOf(XMLConstants.ATTRIBUTE) == -1) && (!xpathString.endsWith(XMLConstants.TEXT))) { throw DescriptorException.invalidXpathForXMLDirectMapping(this); } }
public void initialize(AbstractSession session) throws DescriptorException { super.initialize(session); ((XMLField)getField()).setIsCDATA(this.isCDATA()); String xpathString = ((XMLField)getField()).getXPath(); if (this.isAbstractDirectMapping() && (xpathString.indexOf(XMLConstants.ATTRIBUTE) == -1) && (!xpathString.endsWith(XMLConstants.TEXT))) { throw DescriptorException.invalidXpathForXMLDirectMapping(this); } }
/** * INTERNAL: * Initialize the mapping. */ public void initialize(AbstractSession session) throws DescriptorException { super.initialize(session); if (this.getField() instanceof XMLField) { if (valueConverter instanceof TypeConversionConverter) { TypeConversionConverter converter = (TypeConversionConverter) valueConverter; this.getField().setType(converter.getObjectClass()); } String xpathString = ((XMLField) getField()).getXPath(); if (this.isAbstractCompositeDirectCollectionMapping() && (xpathString.indexOf(XMLConstants.ATTRIBUTE) == -1) && (!xpathString.endsWith(XMLConstants.TEXT))) { throw DescriptorException.invalidXpathForXMLDirectMapping(this); } } ContainerPolicy cp = getContainerPolicy(); if (cp != null) { if (cp.getContainerClass() == null) { Class cls = session.getDatasourcePlatform().getConversionManager().convertClassNameToClass(cp.getContainerClassName()); cp.setContainerClass(cls); } } ((XMLField) this.getField()).setIsCDATA(this.isCDATA()); }
/** * INTERNAL: * Initialize the mapping. */ public void initialize(AbstractSession session) throws DescriptorException { super.initialize(session); if (this.getField() instanceof XMLField) { if (valueConverter instanceof TypeConversionConverter) { TypeConversionConverter converter = (TypeConversionConverter) valueConverter; this.getField().setType(converter.getObjectClass()); } String xpathString = ((XMLField) getField()).getXPath(); if (this.isAbstractCompositeDirectCollectionMapping() && (xpathString.indexOf(XMLConstants.ATTRIBUTE) == -1) && (!xpathString.endsWith(XMLConstants.TEXT))) { throw DescriptorException.invalidXpathForXMLDirectMapping(this); } } ContainerPolicy cp = getContainerPolicy(); if (cp != null) { if (cp.getContainerClass() == null) { Class cls = session.getDatasourcePlatform().getConversionManager().convertClassNameToClass(cp.getContainerClassName()); cp.setContainerClass(cls); } } ((XMLField) this.getField()).setIsCDATA(this.isCDATA()); }
/** * Build an XMLDescriptor for BatchQueryOperation. */ protected XMLDescriptor buildBatchQueryDescriptor() { XMLDescriptor descriptor = new XMLDescriptor(); descriptor.setJavaClass(BatchQueryOperation.class); descriptor.setDefaultRootElement("batch-sql-query"); XMLDirectMapping name = new XMLDirectMapping(); name.setAttributeName("name"); name.setXPath("name/text()"); descriptor.addMapping(name); XMLCompositeDirectCollectionMapping statementsMapping = new XMLCompositeDirectCollectionMapping(); statementsMapping.setAttributeName("batchSql"); XMLField f1 = new XMLField("batch-statement/text()"); f1.setIsCDATA(true); statementsMapping.setField(f1); descriptor.addMapping(statementsMapping); return descriptor; }
/** * Build an XMLDescriptor for BatchQueryOperation. */ protected XMLDescriptor buildBatchQueryDescriptor() { XMLDescriptor descriptor = new XMLDescriptor(); descriptor.setJavaClass(BatchQueryOperation.class); descriptor.setDefaultRootElement("batch-sql-query"); XMLDirectMapping name = new XMLDirectMapping(); name.setAttributeName("name"); name.setXPath("name/text()"); descriptor.addMapping(name); XMLCompositeDirectCollectionMapping statementsMapping = new XMLCompositeDirectCollectionMapping(); statementsMapping.setAttributeName("batchSql"); XMLField f1 = new XMLField("batch-statement/text()"); f1.setIsCDATA(true); statementsMapping.setField(f1); descriptor.addMapping(statementsMapping); return descriptor; }
/** * INTERNAL: * Initialize the mapping. */ public void initialize(AbstractSession session) throws DescriptorException { super.initialize(session); if (this.getField() instanceof XMLField && getValueConverter() instanceof TypeConversionConverter) { TypeConversionConverter converter = (TypeConversionConverter) getValueConverter(); this.getField().setType(converter.getObjectClass()); } ContainerPolicy cp = getContainerPolicy(); if (cp != null) { if (cp.getContainerClass() == null) { Class cls = session.getDatasourcePlatform().getConversionManager().convertClassNameToClass(cp.getContainerClassName()); cp.setContainerClass(cls); } } ((XMLField) this.getField()).setIsCDATA(this.isCDATA()); }
public void endElement(XPathFragment xPathFragment, UnmarshalRecord unmarshalRecord) { Object value = unmarshalRecord.getStringBuffer().toString(); boolean isCDATA = unmarshalRecord.isBufferCDATA(); unmarshalRecord.resetStringBuffer(); XMLField toWrite = xmlField; if(xmlField.isCDATA() != isCDATA) { toWrite = new XMLField(xmlField.getName()); toWrite.setNamespaceResolver(xmlField.getNamespaceResolver()); toWrite.setIsCDATA(isCDATA); } //xmlField.setIsCDATA(isCDATA); XMLConversionManager xmlConversionManager = (XMLConversionManager) unmarshalRecord.getSession().getDatasourcePlatform().getConversionManager(); if (unmarshalRecord.getTypeQName() != null) { Class typeClass = xmlField.getJavaClass(unmarshalRecord.getTypeQName()); value = xmlConversionManager.convertObject(value, typeClass, unmarshalRecord.getTypeQName()); } else { value = xmlField.convertValueBasedOnSchemaType(value, xmlConversionManager, unmarshalRecord); } // PUT VALUE INTO A RECORD KEYED ON XMLFIELD if (null == unmarshalRecord.getTransformationRecord()) { unmarshalRecord.setTransformationRecord(new XMLTransformationRecord("ROOT", unmarshalRecord)); } unmarshalRecord.getTransformationRecord().put(toWrite, value); } }