Package org.springframework.roo.addon.dbre.model

Examples of org.springframework.roo.addon.dbre.model.ForeignKey


                    + "' for many-to-many relationship could not be found. Note that table names are case sensitive in some databases such as MySQL.";
            final Iterator<ForeignKey> iter = joinTable.getImportedKeys()
                    .iterator();

            // First foreign key in set
            final ForeignKey foreignKey1 = iter.next();

            // Second and last foreign key in set
            final ForeignKey foreignKey2 = iter.next();

            final Table owningSideTable = foreignKey1.getForeignTable();
            Validate.notNull(owningSideTable, "Owning-side %s", errMsg);

            final Table inverseSideTable = foreignKey2.getForeignTable();
            Validate.notNull(inverseSideTable, "Inverse-side %s", errMsg);

            final Integer tableCount = owningSideTables
                    .containsKey(owningSideTable) ? owningSideTables
                    .get(owningSideTable) + 1 : 0;
            owningSideTables.put(owningSideTable, tableCount);
            final String fieldSuffix = owningSideTables.get(owningSideTable) > 0 ? String
                    .valueOf(owningSideTables.get(owningSideTable)) : "";

            final boolean sameTable = owningSideTable.equals(inverseSideTable);

            if (owningSideTable.equals(table)) {
                final JavaSymbolName fieldName = new JavaSymbolName(
                        getInflectorPlural(DbreTypeUtils
                                .suggestFieldName(inverseSideTable))
                                + (sameTable ? "1" : fieldSuffix));
                final FieldMetadataBuilder fieldBuilder = getManyToManyOwningSideField(
                        fieldName, joinTable, inverseSideTable,
                        foreignKey1.getOnUpdate(), foreignKey1.getOnDelete());
                uniqueOwningSideFields.put(fieldName, fieldBuilder);
            }

            if (inverseSideTable.equals(table)) {
                final JavaSymbolName fieldName = new JavaSymbolName(
                        getInflectorPlural(DbreTypeUtils
                                .suggestFieldName(owningSideTable))
                                + (sameTable ? "2" : fieldSuffix));
                final JavaSymbolName mappedByFieldName = new JavaSymbolName(
                        getInflectorPlural(DbreTypeUtils
                                .suggestFieldName(inverseSideTable))
                                + (sameTable ? "1" : fieldSuffix));
                final FieldMetadataBuilder fieldBuilder = getManyToManyInverseSideField(
                        fieldName, mappedByFieldName, owningSideTable,
                        foreignKey2.getOnUpdate(), foreignKey2.getOnDelete());
                uniqueInverseSideFields.put(fieldName, fieldBuilder);
            }
        }

        // Add unique owning-side many-to-one fields
View Full Code Here

TOP

Related Classes of org.springframework.roo.addon.dbre.model.ForeignKey

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.