Package org.eclipse.persistence.oxm.mappings

Examples of org.eclipse.persistence.oxm.mappings.XMLCompositeDirectCollectionMapping


    public ClassDescriptor buildSessionBrokerConfigDescriptor() {
        XMLDescriptor descriptor = new XMLDescriptor();
        descriptor.setJavaClass(SessionBrokerConfig.class);
        descriptor.getInheritancePolicy().setParentClass(SessionConfig.class);

        XMLCompositeDirectCollectionMapping sessionNamesMapping = new XMLCompositeDirectCollectionMapping();
        sessionNamesMapping.setAttributeName("m_sessionNames");
        sessionNamesMapping.setGetMethodName("getSessionNames");
        sessionNamesMapping.setSetMethodName("setSessionNames");
        sessionNamesMapping.setXPath("session-name/text()");
        descriptor.addMapping(sessionNamesMapping);

        return descriptor;
    }
View Full Code Here


    public ClassDescriptor buildSessionEventManagerConfigDescriptor() {
        XMLDescriptor descriptor = new XMLDescriptor();
        descriptor.setJavaClass(SessionEventManagerConfig.class);

        XMLCompositeDirectCollectionMapping sessionEventListenersMapping = new XMLCompositeDirectCollectionMapping();
        sessionEventListenersMapping.setAttributeName("m_sessionEventListeners");
        sessionEventListenersMapping.setGetMethodName("getSessionEventListeners");
        sessionEventListenersMapping.setSetMethodName("setSessionEventListeners");
        sessionEventListenersMapping.setXPath("event-listener-class/text()");
        descriptor.addMapping(sessionEventListenersMapping);

        return descriptor;
    }
View Full Code Here

        }
        return mapping;
    }

    private DatabaseMapping buildXMLCompositeDirectCollectionMapping(String mappingUri) {
        XMLCompositeDirectCollectionMapping mapping = new XMLCompositeDirectCollectionMapping();
        mapping.setAttributeName(getName());
        String xpath = getQualifiedXPath(mappingUri, true);

        mapping.setXPath(xpath);
        mapping.setAttributeElementClass(getType().getInstanceClass());

        if (getXsdType() != null) {
            ((XMLField)mapping.getField()).setSchemaType(getXsdType());
        }

        if (getType().equals(SDOConstants.SDO_STRINGS)) {
            mapping.setUsesSingleNode(true);
        }
       
        if (getType().getInstanceClass() != null) {
            if (shouldAddInstanceClassConverter()) {
                InstanceClassConverter converter = new InstanceClassConverter();
                converter.setCustomClass(getType().getInstanceClass());
                mapping.setValueConverter(converter);
            }
        }

        return mapping;
    }
View Full Code Here

        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;
    }
View Full Code Here

    protected ClassDescriptor buildStructDescriptor() {
        XMLDescriptor descriptor = new XMLDescriptor();
        descriptor.setJavaClass(StructMetadata.class);
       
        // Element mappings - must remain in order of definition in XML.
        XMLCompositeDirectCollectionMapping fieldsMapping = new XMLCompositeDirectCollectionMapping();
        fieldsMapping.setAttributeName("m_fields");
        fieldsMapping.setGetMethodName("getFields");
        fieldsMapping.setSetMethodName("setFields");
        fieldsMapping.setXPath("orm:field");
        descriptor.addMapping(fieldsMapping);
       
        // Attribute mappings.
        descriptor.addMapping(getNameAttributeMapping());
       
View Full Code Here

   
    /**
     * INTERNAL:
     */
    protected XMLCompositeDirectCollectionMapping getColumnNamesMapping() {
        XMLCompositeDirectCollectionMapping columnNamesMapping = new XMLCompositeDirectCollectionMapping();
        columnNamesMapping.setAttributeName("m_columnNames");
        columnNamesMapping.setGetMethodName("getColumnNames");
        columnNamesMapping.setSetMethodName("setColumnNames");
        columnNamesMapping.setXPath("orm:column-name");
        return columnNamesMapping;
    }
View Full Code Here

   
    /**
     * INTERNAL:
     */
    protected XMLCompositeDirectCollectionMapping getConnectionPoolsMapping() {
        XMLCompositeDirectCollectionMapping mapping = new XMLCompositeDirectCollectionMapping();
        mapping.setAttributeName("connectionPools");
        mapping.setGetMethodName("getConnectionPools");
        mapping.setSetMethodName("setConnectionPools");
        mapping.setXPath("orm:connection-pool");
        return mapping;
    }
View Full Code Here

            tableHelper.nestedIsComplex();
        }
        else  {
            if (!itemsMappingFound) {
                if (!next.isComplex()) {
                    XMLCompositeDirectCollectionMapping itemsMapping = new XMLCompositeDirectCollectionMapping();
                    itemsMapping.setAttributeElementClass(
                        attributeClassFromDatabaseType((DefaultListenerHelper)next));
                    itemsMapping.setAttributeName(ITEMS_MAPPING_ATTRIBUTE_NAME);
                    itemsMapping.setUsesSingleNode(true);
                    itemsMapping.setXPath("item/text()");
                    XMLField xField = (XMLField)itemsMapping.getField();
                    xField.setRequired(true);
                    itemsMapping.useCollectionClassName("java.util.ArrayList");
                    AbstractNullPolicy nullPolicy = itemsMapping.getNullPolicy();
                    nullPolicy.setNullRepresentedByEmptyNode(false);
                    nullPolicy.setMarshalNullRepresentation(XSI_NIL);
                    nullPolicy.setNullRepresentedByXsiNil(true);
                    itemsMapping.setNullPolicy(nullPolicy);
                    xdesc.getNamespaceResolver().put(SCHEMA_INSTANCE_PREFIX,
                        W3C_XML_SCHEMA_INSTANCE_NS_URI); // to support xsi:nil policy
                    xdesc.addMapping(itemsMapping);
                }
                else {
                    XMLCompositeCollectionMapping itemsMapping = new XMLCompositeCollectionMapping();
                    itemsMapping.setAttributeName(ITEMS_MAPPING_ATTRIBUTE_NAME);
                    itemsMapping.setXPath("item");
                    XMLField xField = (XMLField)itemsMapping.getField();
                    xField.setRequired(true);
                    itemsMapping.useCollectionClassName("java.util.ArrayList");
                    itemsMapping.setReferenceClassName(((TableHelper)next).tableName().toLowerCase() +
                        COLLECTION_WRAPPER_SUFFIX);
                    xdesc.addMapping(itemsMapping);
                }
            }
            if (next.isTable()) {
View Full Code Here

                            xField.setRequired(true);
                            fieldMapping.setReferenceClassName(tblHelper.tableName().toLowerCase());
                            xdesc.addMapping(fieldMapping);
                        }
                        else {
                            XMLCompositeDirectCollectionMapping fieldMapping =
                                new XMLCompositeDirectCollectionMapping();
                            String foo = tblHelper.targetTypeName().toLowerCase();
                            XMLDescriptor xdesc2 = descriptorMap.get(foo);
                            if (xdesc2 != null) {
                                XMLCompositeDirectCollectionMapping itemsMapping =
                                    (XMLCompositeDirectCollectionMapping)xdesc2.getMappingForAttributeName(
                                    ITEMS_MAPPING_ATTRIBUTE_NAME);
                                Class<?> attributeElementClass = itemsMapping.getAttributeElementClass();
                                fieldMapping.setAttributeElementClass(attributeElementClass);
                            }
                            else {
                                fieldMapping.setAttributeElementClass(String.class); //TODO
                            }
View Full Code Here

                else if (listenerHelper2.isArray()) {
                    SqlArrayTypeHelper sqlArrayTypeHelper = (SqlArrayTypeHelper)listenerHelper2;
                    XMLDescriptor xdesc = descriptorMap.get(sqlArrayTypeHelper.arrayTypename());
                    DatabaseMapping dm = xdesc.getMappingForAttributeName(attributeName);
                    if (dm == null) {
                        XMLCompositeDirectCollectionMapping dirCollectMapping =
                            new XMLCompositeDirectCollectionMapping();
                        SqltypeHelper componentType = new SqltypeHelper(sqlTypeName);
                        dirCollectMapping.setAttributeElementClass(
                            attributeClassFromDatabaseType((DefaultListenerHelper)componentType));
                        dirCollectMapping.setAttributeName(attributeName);
                        dirCollectMapping.setUsesSingleNode(true);
                        dirCollectMapping.setXPath(attributeName + "/text()");
                        XMLField xField = (XMLField)dirCollectMapping.getField();
                        xField.setRequired(true);
                        xField.setSchemaType(qnameFromDatabaseType(componentType));
                        dirCollectMapping.useCollectionClassName("java.util.ArrayList");
                        AbstractNullPolicy nullPolicy = dirCollectMapping.getNullPolicy();
                        nullPolicy.setNullRepresentedByEmptyNode(false);
                        nullPolicy.setMarshalNullRepresentation(XSI_NIL);
                        nullPolicy.setNullRepresentedByXsiNil(true);
                        dirCollectMapping.setNullPolicy(nullPolicy);
                        xdesc.getNamespaceResolver().put(SCHEMA_INSTANCE_PREFIX,
                            W3C_XML_SCHEMA_INSTANCE_NS_URI); // to support xsi:nil policy
                        xdesc.addMapping(dirCollectMapping);
                    }
                }
            }
            else if (listenerHelper.isArray()) {
                SqlArrayTypeHelper sqlArrayTypeHelper2 = (SqlArrayTypeHelper)listenerHelper;
                XMLDescriptor xdesc = descriptorMap.get(sqlArrayTypeHelper2.arrayTypename());
                DatabaseMapping dm = xdesc.getMappingForAttributeName(ITEMS_MAPPING_ATTRIBUTE_NAME);
                if (dm == null) {
                    XMLCompositeDirectCollectionMapping itemsMapping = new XMLCompositeDirectCollectionMapping();
                    SqltypeHelper componentType = new SqltypeHelper(sqlTypeName);
                    itemsMapping.setAttributeElementClass(
                        attributeClassFromDatabaseType((DefaultListenerHelper)componentType));
                    itemsMapping.setAttributeName(ITEMS_MAPPING_ATTRIBUTE_NAME);
                    itemsMapping.setUsesSingleNode(true);
                    itemsMapping.setXPath(ITEM_MAPPING_NAME + "/text()");
                    XMLField xField = (XMLField)itemsMapping.getField();
                    xField.setRequired(true);
                    xField.setSchemaType(qnameFromDatabaseType(componentType));
                    itemsMapping.useCollectionClassName("java.util.ArrayList");
                    AbstractNullPolicy nullPolicy = itemsMapping.getNullPolicy();
                    nullPolicy.setNullRepresentedByEmptyNode(false);
                    nullPolicy.setMarshalNullRepresentation(XSI_NIL);
                    nullPolicy.setNullRepresentedByXsiNil(true);
                    itemsMapping.setNullPolicy(nullPolicy);
                    xdesc.getNamespaceResolver().put(SCHEMA_INSTANCE_PREFIX,
                        W3C_XML_SCHEMA_INSTANCE_NS_URI); // to support xsi:nil policy
                    xdesc.addMapping(itemsMapping);
                }
                ListenerHelper listenerHelper2 = stac.peek();
                if (listenerHelper2.isAttribute()) {
                    // type built above used in field definition of object further up stack
                    stac.pop();
                    AttributeFieldHelper fieldHelper = (AttributeFieldHelper)listenerHelper2;
                    ListenerHelper listenerHelper3 = stac.peek();
                    if (listenerHelper3.isObject()) {
                        ObjectTypeHelper objectTypeHelper = (ObjectTypeHelper)listenerHelper3;
                        XMLDescriptor xdesc2 = descriptorMap.get(objectTypeHelper.objectTypename());
                        String fieldName = fieldHelper.attributeFieldName();
                        DatabaseMapping dm2 = xdesc2.getMappingForAttributeName(fieldName.toLowerCase());
                        if (dm2 == null) {
                            XMLCompositeDirectCollectionMapping fieldMapping = new XMLCompositeDirectCollectionMapping();
                            SqltypeHelper componentType = new SqltypeHelper(sqlTypeName);
                            fieldMapping.setAttributeElementClass(
                                attributeClassFromDatabaseType((DefaultListenerHelper)componentType));
                            fieldMapping.setAttributeName(fieldName.toLowerCase());
                            XMLField field = new XMLField(fieldName.toLowerCase() + "/" +
                                ITEM_MAPPING_NAME + "/text()");
                            field.setRequired(true);
                            fieldMapping.setField(field);
                            field.setSchemaType(qnameFromDatabaseType(componentType));
                            fieldMapping.useCollectionClassName("java.util.ArrayList");
                            AbstractNullPolicy nullPolicy = fieldMapping.getNullPolicy();
                            nullPolicy.setNullRepresentedByEmptyNode(false);
                            nullPolicy.setMarshalNullRepresentation(XSI_NIL);
                            nullPolicy.setNullRepresentedByXsiNil(true);
                            fieldMapping.setNullPolicy(nullPolicy);
                            xdesc2.getNamespaceResolver().put(SCHEMA_INSTANCE_PREFIX,
                                W3C_XML_SCHEMA_INSTANCE_NS_URI); // to support xsi:nil policy
                            xdesc2.addMapping(fieldMapping);
                        }
                        // last attribute, pop ObjectTypeHelper off stack
View Full Code Here

TOP

Related Classes of org.eclipse.persistence.oxm.mappings.XMLCompositeDirectCollectionMapping

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.