/** * @param element */ public XMLType(TypeInfo type) { this.element = null; this.type = type.getQName(); }
/** * @param element */ public XMLType(TypeInfo type) { this.element = null; this.type = type.getQName(); }
private static String getStringValue(Object o) { if (o == null) { return null; } TypeInfo info = MAPPER.getXMLType(o.getClass()); if (info != null) { return MAPPER.toXMLLiteral(info.getQName(), o, null); } else { return String.valueOf(o); } }
private static String getStringValue(Object o) { if (o == null) { return null; } TypeInfo info = MAPPER.getXMLType(o.getClass()); if (info != null) { return MAPPER.toXMLLiteral(info.getQName(), o, null); } else { return String.valueOf(o); } }
/** * @param element */ public XMLType(ElementInfo element) { super(); this.element = element.getQName(); if (element.getType() != null) { this.type = element.getType().getQName(); } }
/** * @param element */ public XMLType(ElementInfo element) { super(); this.element = element.getQName(); if (element.getType() != null) { this.type = element.getType().getQName(); } }
private <B> void validateTypes(ComponentProperty property, Class<B> type) { // JAXB seems to do some strange things with conversions, so // we can't rely on the databinding conversion from Node->Java to catch // incompatible types. DataType prop1 = property.getProperty().getDataType(); if ( (prop1 != null) && (type.isAssignableFrom(prop1.getPhysical())) ) { return; } else if ( simpleTypeMapper.getXMLType(type) != null ) { if ( simpleTypeMapper.getXMLType(type).getQName().equals(property.getXSDType())) return; } else if ( isSimpleType(property) ) { if ( type.isAssignableFrom(simpleTypeMapper.getJavaType(property.getXSDType()))) return; } throw new IllegalArgumentException("Property type " + prop1.getPhysical().getName() + " is not compatible with " + type.getName()); }
/** * Create xis:type if required * @param childElement * @param element * @return */ private OMElement attachXSIType(ElementInfo childElement, OMElement element) { TypeInfo type = childElement.getType(); if (type != null && type.getQName() != null) { OMAttribute attr = element.getAttribute(XSI_TYPE_QNAME); if (attr == null) { String typeNS = type.getQName().getNamespaceURI(); if (XMLConstants.W3C_XML_SCHEMA_NS_URI.equals(typeNS)) { return element; } OMNamespace ns = element.getOMFactory().createOMNamespace(typeNS, "_typens_"); element.declareNamespace(ns); OMNamespace xsiNS = element.getOMFactory().createOMNamespace(XSI_TYPE_QNAME.getNamespaceURI(), XSI_TYPE_QNAME.getPrefix()); element.declareNamespace(xsiNS); attr = element.getOMFactory().createOMAttribute("type", xsiNS, "_typens_:" + type.getQName().getLocalPart()); element.addAttribute(attr); } } return element; }
@Override public boolean introspect(DataType type, Operation operation) { Class<?> cls = type.getPhysical(); if (cls == Object.class) { return false; } // HACK: [rfeng] By pass the one know to XMLString String db = type.getDataBinding(); if (db != null && (XMLStringDataBinding.NAME.equals(db))) { return false; } if (SimpleTypeMapperImpl.JAVA2XML.keySet().contains(cls)) { type.setDataBinding(NAME); QName elementName = null; Object logical = type.getLogical(); if (logical instanceof XMLType) { elementName = ((XMLType)logical).getElementName(); } TypeInfo typeInfo = simpleTypeMapper.getXMLType(cls); type.setLogical(new XMLType(elementName, typeInfo == null ? null : typeInfo.getQName())); return true; } else { return false; } }
@Override public boolean introspect(DataType type, Operation operation) { Class<?> cls = type.getPhysical(); if (cls == Object.class) { return false; } // HACK: [rfeng] By pass the one know to XMLString String db = type.getDataBinding(); if (db != null && (XMLStringDataBinding.NAME.equals(db))) { return false; } if (SimpleTypeMapperImpl.JAVA2XML.keySet().contains(cls)) { type.setDataBinding(NAME); QName elementName = null; Object logical = type.getLogical(); if (logical instanceof XMLType) { elementName = ((XMLType)logical).getElementName(); } TypeInfo typeInfo = simpleTypeMapper.getXMLType(cls); type.setLogical(new XMLType(elementName, typeInfo == null ? null : typeInfo.getQName())); return true; } else { return false; } }
if (entry.getValue().size() == 1 && entry.getValue().get(0).getQName() == null) { QName typeName = entry.getValue().get(0).getType().getQName(); String nsURI = typeName.getNamespaceURI(); if ("".equals(nsURI)) { xsElement.setAttribute("nillable", "true"); QName typeName = element.getType().getQName(); String nsURI = typeName.getNamespaceURI(); if ("".equals(nsURI)) {
if (entry.getValue().size() == 1 && entry.getValue().get(0).getQName() == null) { QName typeName = entry.getValue().get(0).getType().getQName(); String nsURI = typeName.getNamespaceURI(); if ("".equals(nsURI)) { xsElement.setAttribute("nillable", "true"); QName typeName = element.getType().getQName(); String nsURI = typeName.getNamespaceURI(); if ("".equals(nsURI)) {
throws XML2JavaMapperException { if (isTextOnly(element)) { return (L) mapper.toJavaObject(mapper.getXMLType(javaType).getQName(), getText(element), context);
throws XML2JavaMapperException { if (isTextOnly(element)) { return (L) mapper.toJavaObject(mapper.getXMLType(javaType).getQName(), getText(element), context);