Search in sources :

Example 1 with XmlJoinNodes

use of org.eclipse.persistence.jaxb.xmlmodel.XmlJoinNodes in project eclipselink by eclipse-ee4j.

the class OXMJavaClassImpl method getDeclaredFields.

/**
 * Return all of the declared <code>JavaFields</code> for this <code>JavaClass</code>.
 *
 * @return A <code>Collection</code> containing this <code>JavaClass'</code> <code>JavaFields</code>.
 */
@Override
public Collection<JavaField> getDeclaredFields() {
    List<JavaField> fieldsToReturn = new ArrayList<JavaField>();
    if (this.enumValues != null) {
        for (Iterator<String> iterator = this.enumValues.iterator(); iterator.hasNext(); ) {
            fieldsToReturn.add(new OXMJavaFieldImpl(iterator.next(), JAVA_LANG_OBJECT, this));
        }
    } else {
        JavaAttributes javaAttributes = this.javaType.getJavaAttributes();
        if (null != javaAttributes) {
            List<JAXBElement<? extends JavaAttribute>> fields = javaAttributes.getJavaAttribute();
            for (Iterator<JAXBElement<? extends JavaAttribute>> iterator = fields.iterator(); iterator.hasNext(); ) {
                JAXBElement<? extends JavaAttribute> jaxbElement = iterator.next();
                JavaAttribute att = jaxbElement.getValue();
                if (att instanceof XmlElement) {
                    XmlElement xme = (XmlElement) att;
                    String fieldName = xme.getJavaAttribute();
                    String fieldType = xme.getType();
                    fieldsToReturn.add(new OXMJavaFieldImpl(fieldName, fieldType, this));
                } else if (att instanceof XmlElements) {
                    XmlElements xmes = (XmlElements) att;
                    String fieldName = xmes.getJavaAttribute();
                    String fieldType = JAVA_LANG_OBJECT;
                    fieldsToReturn.add(new OXMJavaFieldImpl(fieldName, fieldType, this));
                } else if (att instanceof XmlElementRef) {
                    XmlElementRef xmer = (XmlElementRef) att;
                    String fieldName = xmer.getJavaAttribute();
                    String fieldType = xmer.getType();
                    fieldsToReturn.add(new OXMJavaFieldImpl(fieldName, fieldType, this));
                } else if (att instanceof XmlAttribute) {
                    XmlAttribute xma = (XmlAttribute) att;
                    String fieldName = xma.getJavaAttribute();
                    String fieldType = xma.getType();
                    fieldsToReturn.add(new OXMJavaFieldImpl(fieldName, fieldType, this));
                } else if (att instanceof XmlValue) {
                    XmlValue xmv = (XmlValue) att;
                    String fieldName = xmv.getJavaAttribute();
                    String fieldType = xmv.getType();
                    fieldsToReturn.add(new OXMJavaFieldImpl(fieldName, fieldType, this));
                } else if (att instanceof XmlAnyElement) {
                    XmlAnyElement xmae = (XmlAnyElement) att;
                    String fieldName = xmae.getJavaAttribute();
                    String fieldType = JAVA_LANG_OBJECT;
                    fieldsToReturn.add(new OXMJavaFieldImpl(fieldName, fieldType, this));
                } else if (att instanceof XmlAnyAttribute) {
                    XmlAnyAttribute xmaa = (XmlAnyAttribute) att;
                    String fieldName = xmaa.getJavaAttribute();
                    String fieldType = JAVA_UTIL_MAP;
                    fieldsToReturn.add(new OXMJavaFieldImpl(fieldName, fieldType, this));
                } else if (att instanceof XmlJoinNodes) {
                    XmlJoinNodes xmjn = (XmlJoinNodes) att;
                    String fieldName = xmjn.getJavaAttribute();
                    String fieldType = xmjn.getType();
                    fieldsToReturn.add(new OXMJavaFieldImpl(fieldName, fieldType, this));
                } else if (att instanceof XmlInverseReference) {
                    XmlInverseReference xmir = (XmlInverseReference) att;
                    String fieldName = xmir.getJavaAttribute();
                    String fieldType = xmir.getType();
                    fieldsToReturn.add(new OXMJavaFieldImpl(fieldName, fieldType, this));
                }
            }
        }
    }
    return fieldsToReturn;
}
Also used : XmlElementRef(org.eclipse.persistence.jaxb.xmlmodel.XmlElementRef) XmlAttribute(org.eclipse.persistence.jaxb.xmlmodel.XmlAttribute) XmlAnyElement(org.eclipse.persistence.jaxb.xmlmodel.XmlAnyElement) ArrayList(java.util.ArrayList) XmlJoinNodes(org.eclipse.persistence.jaxb.xmlmodel.XmlJoinNodes) JAXBElement(jakarta.xml.bind.JAXBElement) XmlInverseReference(org.eclipse.persistence.jaxb.xmlmodel.XmlInverseReference) JavaAttributes(org.eclipse.persistence.jaxb.xmlmodel.JavaType.JavaAttributes) XmlElements(org.eclipse.persistence.jaxb.xmlmodel.XmlElements) JavaField(org.eclipse.persistence.jaxb.javamodel.JavaField) XmlAnyAttribute(org.eclipse.persistence.jaxb.xmlmodel.XmlAnyAttribute) XmlElement(org.eclipse.persistence.jaxb.xmlmodel.XmlElement) XmlValue(org.eclipse.persistence.jaxb.xmlmodel.XmlValue) JavaAttribute(org.eclipse.persistence.jaxb.xmlmodel.JavaAttribute)

Aggregations

JAXBElement (jakarta.xml.bind.JAXBElement)1 ArrayList (java.util.ArrayList)1 JavaField (org.eclipse.persistence.jaxb.javamodel.JavaField)1 JavaAttribute (org.eclipse.persistence.jaxb.xmlmodel.JavaAttribute)1 JavaAttributes (org.eclipse.persistence.jaxb.xmlmodel.JavaType.JavaAttributes)1 XmlAnyAttribute (org.eclipse.persistence.jaxb.xmlmodel.XmlAnyAttribute)1 XmlAnyElement (org.eclipse.persistence.jaxb.xmlmodel.XmlAnyElement)1 XmlAttribute (org.eclipse.persistence.jaxb.xmlmodel.XmlAttribute)1 XmlElement (org.eclipse.persistence.jaxb.xmlmodel.XmlElement)1 XmlElementRef (org.eclipse.persistence.jaxb.xmlmodel.XmlElementRef)1 XmlElements (org.eclipse.persistence.jaxb.xmlmodel.XmlElements)1 XmlInverseReference (org.eclipse.persistence.jaxb.xmlmodel.XmlInverseReference)1 XmlJoinNodes (org.eclipse.persistence.jaxb.xmlmodel.XmlJoinNodes)1 XmlValue (org.eclipse.persistence.jaxb.xmlmodel.XmlValue)1