| /* |
| * Copyright (c) 1998, 2021 Oracle and/or its affiliates. All rights reserved. |
| * |
| * This program and the accompanying materials are made available under the |
| * terms of the Eclipse Public License v. 2.0 which is available at |
| * http://www.eclipse.org/legal/epl-2.0, |
| * or the Eclipse Distribution License v. 1.0 which is available at |
| * http://www.eclipse.org/org/documents/edl-v10.php. |
| * |
| * SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause |
| */ |
| |
| // Contributors: |
| // Oracle - initial API and implementation from Oracle TopLink |
| // 08/27/2008-1.1 Guy Pelletier |
| // - 211329: Add sequencing on non-id attribute(s) support to the EclipseLink-ORM.XML Schema |
| // 08/28/2008-1.1 Guy Pelletier |
| // - 245120: unidir one-to-many within embeddable fails to deploy for missing primary key field |
| // 02/06/2009-2.0 Guy Pelletier |
| // - 248293: JPA 2.0 Element Collections (part 2) |
| // 02/25/2009-2.0 Guy Pelletier |
| // - 265359: JPA 2.0 Element Collections - Metadata processing portions |
| // 12/17/2010-2.2 Guy Pelletier |
| // - 330755: Nested embeddables can't be used as embedded ids |
| package org.eclipse.persistence.testing.models.jpa.complexaggregate; |
| |
| import java.util.Iterator; |
| |
| import org.eclipse.persistence.sessions.DatabaseSession; |
| import org.eclipse.persistence.tools.schemaframework.*; |
| |
| public class ComplexAggregateTableCreator extends org.eclipse.persistence.tools.schemaframework.TableCreator { |
| public ComplexAggregateTableCreator() { |
| setName("EJB3ComplexAggregateProject"); |
| |
| addTableDefinition(buildCITYSLICKERTable()); |
| addTableDefinition(buildCOUNTRYDWELLERTable()); |
| addTableDefinition(buildWORLDTable()); |
| |
| addTableDefinition(buildHOCKEYCOACHTable()); |
| addTableDefinition(buildHOCKEYPLAYERTable()); |
| addTableDefinition(buildHOCKEYTEAMTable()); |
| |
| addTableDefinition(buildROLETable()); |
| addTableDefinition(buildPLAYERROLESTable()); |
| addTableDefinition(buildHockeyCoach_NICKNAMESTable()); |
| |
| addTableDefinition(buildBODYTable()); |
| |
| addTableDefinition(buildPLACETable()); |
| |
| addTableDefinition(buildHOCKEY_PUCKTable()); |
| addTableDefinition(buildHOCKEY_RINKTable()); |
| } |
| |
| public TableDefinition buildBODYTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("JPA_BODY"); |
| |
| FieldDefinition fieldCOUNT = new FieldDefinition(); |
| fieldCOUNT.setName("BODY_COUNT"); |
| fieldCOUNT.setTypeName("NUMBER"); |
| fieldCOUNT.setSize(15); |
| fieldCOUNT.setSubSize(0); |
| fieldCOUNT.setIsPrimaryKey(false); |
| fieldCOUNT.setIsIdentity(false); |
| fieldCOUNT.setUnique(false); |
| fieldCOUNT.setShouldAllowNull(false); |
| table.addField(fieldCOUNT); |
| |
| FieldDefinition fieldHEARTSIZE = new FieldDefinition(); |
| fieldHEARTSIZE.setName("H_SIZE"); |
| fieldHEARTSIZE.setTypeName("NUMBER"); |
| fieldHEARTSIZE.setSize(15); |
| fieldHEARTSIZE.setSubSize(0); |
| fieldHEARTSIZE.setIsPrimaryKey(false); |
| fieldHEARTSIZE.setIsIdentity(false); |
| fieldHEARTSIZE.setUnique(false); |
| fieldHEARTSIZE.setShouldAllowNull(false); |
| table.addField(fieldHEARTSIZE); |
| |
| return table; |
| } |
| |
| public TableDefinition buildCITYSLICKERTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_CITYSLICKER"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(true); |
| fieldID.setUnique(true); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldFNAME = new FieldDefinition(); |
| fieldFNAME.setName("FIRST_NAME"); |
| fieldFNAME.setTypeName("VARCHAR2"); |
| fieldFNAME.setSize(20); |
| fieldFNAME.setSubSize(0); |
| fieldFNAME.setIsPrimaryKey(true); |
| fieldFNAME.setIsIdentity(false); |
| fieldFNAME.setUnique(true); |
| fieldFNAME.setShouldAllowNull(false); |
| table.addField(fieldFNAME); |
| |
| FieldDefinition fieldLNAME = new FieldDefinition(); |
| fieldLNAME.setName("LNAME"); |
| fieldLNAME.setTypeName("VARCHAR2"); |
| fieldLNAME.setSize(20); |
| fieldLNAME.setSubSize(0); |
| fieldLNAME.setIsPrimaryKey(true); |
| fieldLNAME.setIsIdentity(false); |
| fieldLNAME.setUnique(true); |
| fieldLNAME.setShouldAllowNull(false); |
| table.addField(fieldLNAME); |
| |
| FieldDefinition fieldAGE = new FieldDefinition(); |
| fieldAGE.setName("AGE"); |
| fieldAGE.setTypeName("NUMBER"); |
| fieldAGE.setSize(15); |
| fieldAGE.setSubSize(0); |
| fieldAGE.setIsPrimaryKey(false); |
| fieldAGE.setIsIdentity(false); |
| fieldAGE.setUnique(false); |
| fieldAGE.setShouldAllowNull(false); |
| table.addField(fieldAGE); |
| |
| FieldDefinition fieldGENDER = new FieldDefinition(); |
| fieldGENDER.setName("GENDER"); |
| fieldGENDER.setTypeName("VARCHAR2"); |
| fieldGENDER.setSize(6); |
| fieldGENDER.setSubSize(0); |
| fieldGENDER.setIsPrimaryKey(false); |
| fieldGENDER.setIsIdentity(false); |
| fieldGENDER.setUnique(false); |
| fieldGENDER.setShouldAllowNull(true); |
| table.addField(fieldGENDER); |
| |
| FieldDefinition fieldWORLDID = new FieldDefinition(); |
| fieldWORLDID.setName("WORLD_ID"); |
| fieldWORLDID.setTypeName("NUMBER"); |
| fieldWORLDID.setSize(18); |
| fieldWORLDID.setSubSize(0); |
| fieldWORLDID.setIsPrimaryKey(false); |
| fieldWORLDID.setIsIdentity(false); |
| fieldWORLDID.setUnique(false); |
| fieldWORLDID.setShouldAllowNull(true); |
| fieldWORLDID.setForeignKeyFieldName("CMP3_WORLD.ID"); |
| table.addField(fieldWORLDID); |
| |
| return table; |
| } |
| |
| public TableDefinition buildCOUNTRYDWELLERTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_COUNTRY_DWELLER"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(true); |
| fieldID.setUnique(true); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldFNAME = new FieldDefinition(); |
| fieldFNAME.setName("FNAME"); |
| fieldFNAME.setTypeName("VARCHAR2"); |
| fieldFNAME.setSize(20); |
| fieldFNAME.setSubSize(0); |
| fieldFNAME.setIsPrimaryKey(true); |
| fieldFNAME.setIsIdentity(false); |
| fieldFNAME.setUnique(true); |
| fieldFNAME.setShouldAllowNull(false); |
| table.addField(fieldFNAME); |
| |
| FieldDefinition fieldLNAME = new FieldDefinition(); |
| fieldLNAME.setName("LNAME"); |
| fieldLNAME.setTypeName("VARCHAR2"); |
| fieldLNAME.setSize(20); |
| fieldLNAME.setSubSize(0); |
| fieldLNAME.setIsPrimaryKey(true); |
| fieldLNAME.setIsIdentity(false); |
| fieldLNAME.setUnique(true); |
| fieldLNAME.setShouldAllowNull(false); |
| table.addField(fieldLNAME); |
| |
| FieldDefinition fieldAGE = new FieldDefinition(); |
| fieldAGE.setName("AGE"); |
| fieldAGE.setTypeName("NUMBER"); |
| fieldAGE.setSize(15); |
| fieldAGE.setSubSize(0); |
| fieldAGE.setIsPrimaryKey(false); |
| fieldAGE.setIsIdentity(false); |
| fieldAGE.setUnique(false); |
| fieldAGE.setShouldAllowNull(false); |
| table.addField(fieldAGE); |
| |
| FieldDefinition fieldGENDER = new FieldDefinition(); |
| fieldGENDER.setName("GENDER"); |
| fieldGENDER.setTypeName("VARCHAR2"); |
| fieldGENDER.setSize(6); |
| fieldGENDER.setSubSize(0); |
| fieldGENDER.setIsPrimaryKey(false); |
| fieldGENDER.setIsIdentity(false); |
| fieldGENDER.setUnique(false); |
| fieldGENDER.setShouldAllowNull(true); |
| table.addField(fieldGENDER); |
| |
| FieldDefinition fieldWORLDID = new FieldDefinition(); |
| fieldWORLDID.setName("WORLD_ID"); |
| fieldWORLDID.setTypeName("NUMBER"); |
| fieldWORLDID.setSize(18); |
| fieldWORLDID.setSubSize(0); |
| fieldWORLDID.setIsPrimaryKey(false); |
| fieldWORLDID.setIsIdentity(false); |
| fieldWORLDID.setUnique(false); |
| fieldWORLDID.setShouldAllowNull(true); |
| fieldWORLDID.setForeignKeyFieldName("CMP3_WORLD.ID"); |
| table.addField(fieldWORLDID); |
| |
| return table; |
| } |
| |
| public TableDefinition buildHOCKEYCOACHTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_HOCKEY_COACH"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(false); |
| fieldID.setUnique(false); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldFNAME = new FieldDefinition(); |
| fieldFNAME.setName("FNAME"); |
| fieldFNAME.setTypeName("VARCHAR2"); |
| fieldFNAME.setSize(20); |
| fieldFNAME.setSubSize(0); |
| fieldFNAME.setIsPrimaryKey(false); |
| fieldFNAME.setIsIdentity(false); |
| fieldFNAME.setUnique(false); |
| fieldFNAME.setShouldAllowNull(false); |
| table.addField(fieldFNAME); |
| |
| FieldDefinition fieldLNAME = new FieldDefinition(); |
| fieldLNAME.setName("LNAME"); |
| fieldLNAME.setTypeName("VARCHAR2"); |
| fieldLNAME.setSize(20); |
| fieldLNAME.setSubSize(0); |
| fieldLNAME.setIsPrimaryKey(false); |
| fieldLNAME.setIsIdentity(false); |
| fieldLNAME.setUnique(false); |
| fieldLNAME.setShouldAllowNull(false); |
| table.addField(fieldLNAME); |
| |
| FieldDefinition fieldAGE = new FieldDefinition(); |
| fieldAGE.setName("AGE"); |
| fieldAGE.setTypeName("NUMBER"); |
| fieldAGE.setSize(15); |
| fieldAGE.setSubSize(0); |
| fieldAGE.setIsPrimaryKey(false); |
| fieldAGE.setIsIdentity(false); |
| fieldAGE.setUnique(false); |
| fieldAGE.setShouldAllowNull(true); |
| table.addField(fieldAGE); |
| |
| FieldDefinition fieldHEIGHT = new FieldDefinition(); |
| fieldHEIGHT.setName("HEIGHT"); |
| fieldHEIGHT.setTypeName("DOUBLE PRECIS"); |
| fieldHEIGHT.setSize(15); |
| fieldHEIGHT.setSubSize(0); |
| fieldHEIGHT.setIsPrimaryKey(false); |
| fieldHEIGHT.setIsIdentity(false); |
| fieldHEIGHT.setUnique(false); |
| fieldHEIGHT.setShouldAllowNull(true); |
| table.addField(fieldHEIGHT); |
| |
| FieldDefinition fieldWEIGHT = new FieldDefinition(); |
| fieldWEIGHT.setName("WEIGHT"); |
| fieldWEIGHT.setTypeName("DOUBLE PRECIS"); |
| fieldWEIGHT.setSize(15); |
| fieldWEIGHT.setSubSize(0); |
| fieldWEIGHT.setIsPrimaryKey(false); |
| fieldWEIGHT.setIsIdentity(false); |
| fieldWEIGHT.setUnique(false); |
| fieldWEIGHT.setShouldAllowNull(true); |
| table.addField(fieldWEIGHT); |
| |
| FieldDefinition fieldTEAMID = new FieldDefinition(); |
| fieldTEAMID.setName("TEAM_ID"); |
| fieldTEAMID.setTypeName("NUMBER"); |
| fieldTEAMID.setSize(18); |
| fieldTEAMID.setSubSize(0); |
| fieldTEAMID.setIsPrimaryKey(false); |
| fieldTEAMID.setIsIdentity(false); |
| fieldTEAMID.setUnique(false); |
| fieldTEAMID.setShouldAllowNull(true); |
| fieldTEAMID.setForeignKeyFieldName("CMP3_HOCKEY_TEAM.ID"); |
| table.addField(fieldTEAMID); |
| |
| return table; |
| } |
| |
| public TableDefinition buildHockeyCoach_NICKNAMESTable() { |
| // TODO: This table and column name is defaulting incorrectly, it should be all upper-case. |
| TableDefinition table = new TableDefinition(); |
| table.setName("HockeyCoach_NICKNAMES"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("HockeyCoach_ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(false); |
| fieldID.setUnique(false); |
| fieldID.setShouldAllowNull(false); |
| fieldID.setForeignKeyFieldName("CMP3_HOCKEY_COACH.ID"); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldNICKNAMES = new FieldDefinition(); |
| fieldNICKNAMES.setName("NICKNAMES"); |
| fieldNICKNAMES.setTypeName("VARCHAR2"); |
| fieldNICKNAMES.setSize(20); |
| fieldNICKNAMES.setSubSize(0); |
| fieldNICKNAMES.setIsPrimaryKey(true); |
| fieldNICKNAMES.setIsIdentity(false); |
| fieldNICKNAMES.setUnique(false); |
| fieldNICKNAMES.setShouldAllowNull(false); |
| table.addField(fieldNICKNAMES); |
| |
| |
| return table; |
| } |
| |
| public TableDefinition buildHOCKEYPLAYERTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_HOCKEY_PLAYER"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("PLAYERID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(false); |
| fieldID.setUnique(false); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldFNAME = new FieldDefinition(); |
| fieldFNAME.setName("FNAME"); |
| fieldFNAME.setTypeName("VARCHAR2"); |
| fieldFNAME.setSize(20); |
| fieldFNAME.setSubSize(0); |
| fieldFNAME.setIsPrimaryKey(false); |
| fieldFNAME.setIsIdentity(false); |
| fieldFNAME.setUnique(false); |
| fieldFNAME.setShouldAllowNull(false); |
| table.addField(fieldFNAME); |
| |
| FieldDefinition fieldLNAME = new FieldDefinition(); |
| fieldLNAME.setName("LNAME"); |
| fieldLNAME.setTypeName("VARCHAR2"); |
| fieldLNAME.setSize(20); |
| fieldLNAME.setSubSize(0); |
| fieldLNAME.setIsPrimaryKey(false); |
| fieldLNAME.setIsIdentity(false); |
| fieldLNAME.setUnique(false); |
| fieldLNAME.setShouldAllowNull(false); |
| table.addField(fieldLNAME); |
| |
| FieldDefinition fieldAGE = new FieldDefinition(); |
| fieldAGE.setName("AGE"); |
| fieldAGE.setTypeName("NUMBER"); |
| fieldAGE.setSize(15); |
| fieldAGE.setSubSize(0); |
| fieldAGE.setIsPrimaryKey(false); |
| fieldAGE.setIsIdentity(false); |
| fieldAGE.setUnique(false); |
| fieldAGE.setShouldAllowNull(true); |
| table.addField(fieldAGE); |
| |
| FieldDefinition fieldHEIGHT = new FieldDefinition(); |
| fieldHEIGHT.setName("HEIGHT"); |
| fieldHEIGHT.setTypeName("DOUBLE PRECIS"); |
| fieldHEIGHT.setSize(15); |
| fieldHEIGHT.setSubSize(0); |
| fieldHEIGHT.setIsPrimaryKey(false); |
| fieldHEIGHT.setIsIdentity(false); |
| fieldHEIGHT.setUnique(false); |
| fieldHEIGHT.setShouldAllowNull(true); |
| table.addField(fieldHEIGHT); |
| |
| FieldDefinition fieldWEIGHT = new FieldDefinition(); |
| fieldWEIGHT.setName("WEIGHT"); |
| fieldWEIGHT.setTypeName("DOUBLE PRECIS"); |
| fieldWEIGHT.setSize(15); |
| fieldWEIGHT.setSubSize(0); |
| fieldWEIGHT.setIsPrimaryKey(false); |
| fieldWEIGHT.setIsIdentity(false); |
| fieldWEIGHT.setUnique(false); |
| fieldWEIGHT.setShouldAllowNull(true); |
| table.addField(fieldWEIGHT); |
| |
| FieldDefinition fieldJERSEYNUMBER = new FieldDefinition(); |
| fieldJERSEYNUMBER.setName("JERSEY_NUMBER"); |
| fieldJERSEYNUMBER.setTypeName("NUMBER"); |
| fieldJERSEYNUMBER.setSize(15); |
| fieldJERSEYNUMBER.setSubSize(0); |
| fieldJERSEYNUMBER.setIsPrimaryKey(false); |
| fieldJERSEYNUMBER.setIsIdentity(false); |
| fieldJERSEYNUMBER.setUnique(false); |
| fieldJERSEYNUMBER.setShouldAllowNull(true); |
| table.addField(fieldJERSEYNUMBER); |
| |
| FieldDefinition fieldPOSITION = new FieldDefinition(); |
| fieldPOSITION.setName("PLAYER_POSITION"); |
| fieldPOSITION.setTypeName("VARCHAR2"); |
| fieldPOSITION.setSize(20); |
| fieldPOSITION.setSubSize(0); |
| fieldPOSITION.setIsPrimaryKey(false); |
| fieldPOSITION.setIsIdentity(false); |
| fieldPOSITION.setUnique(false); |
| fieldPOSITION.setShouldAllowNull(true); |
| table.addField(fieldPOSITION); |
| |
| FieldDefinition fieldTEAMID = new FieldDefinition(); |
| fieldTEAMID.setName("TEAM_ID"); |
| fieldTEAMID.setTypeName("NUMBER"); |
| fieldTEAMID.setSize(18); |
| fieldTEAMID.setSubSize(0); |
| fieldTEAMID.setIsPrimaryKey(false); |
| fieldTEAMID.setIsIdentity(false); |
| fieldTEAMID.setUnique(false); |
| fieldTEAMID.setShouldAllowNull(true); |
| fieldTEAMID.setForeignKeyFieldName("CMP3_HOCKEY_TEAM.ID"); |
| table.addField(fieldTEAMID); |
| |
| FieldDefinition fieldHockeyCoach_ID = new FieldDefinition(); |
| fieldHockeyCoach_ID.setName("COACH_ID"); |
| fieldHockeyCoach_ID.setTypeName("NUMBER"); |
| fieldHockeyCoach_ID.setSize(18); |
| fieldHockeyCoach_ID.setSubSize(0); |
| fieldHockeyCoach_ID.setIsPrimaryKey(false); |
| fieldHockeyCoach_ID.setIsIdentity(false); |
| fieldHockeyCoach_ID.setUnique(false); |
| fieldHockeyCoach_ID.setShouldAllowNull(true); |
| table.addField(fieldHockeyCoach_ID); |
| |
| return table; |
| } |
| |
| public TableDefinition buildHOCKEYTEAMTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_HOCKEY_TEAM"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(false); |
| fieldID.setUnique(false); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldNAME = new FieldDefinition(); |
| fieldNAME.setName("NAME"); |
| fieldNAME.setTypeName("VARCHAR2"); |
| fieldNAME.setSize(20); |
| fieldNAME.setSubSize(0); |
| fieldNAME.setIsPrimaryKey(false); |
| fieldNAME.setIsIdentity(false); |
| fieldNAME.setUnique(false); |
| fieldNAME.setShouldAllowNull(false); |
| table.addField(fieldNAME); |
| |
| FieldDefinition fieldLEVEL = new FieldDefinition(); |
| fieldLEVEL.setName("TEAM_LEVEL"); |
| fieldLEVEL.setTypeName("VARCHAR2"); |
| fieldLEVEL.setSize(20); |
| fieldLEVEL.setSubSize(0); |
| fieldLEVEL.setIsPrimaryKey(false); |
| fieldLEVEL.setIsIdentity(false); |
| fieldLEVEL.setUnique(false); |
| fieldLEVEL.setShouldAllowNull(false); |
| table.addField(fieldLEVEL); |
| |
| FieldDefinition fieldHOMECOLOR = new FieldDefinition(); |
| fieldHOMECOLOR.setName("HOME_COLOR"); |
| fieldHOMECOLOR.setTypeName("VARCHAR2"); |
| fieldHOMECOLOR.setSize(20); |
| fieldHOMECOLOR.setSubSize(0); |
| fieldHOMECOLOR.setIsPrimaryKey(false); |
| fieldHOMECOLOR.setIsIdentity(false); |
| fieldHOMECOLOR.setUnique(false); |
| fieldHOMECOLOR.setShouldAllowNull(true); |
| table.addField(fieldHOMECOLOR); |
| |
| FieldDefinition fieldAWAYCOLOR = new FieldDefinition(); |
| fieldAWAYCOLOR.setName("AWAY_COLOR"); |
| fieldAWAYCOLOR.setTypeName("VARCHAR2"); |
| fieldAWAYCOLOR.setSize(20); |
| fieldAWAYCOLOR.setSubSize(0); |
| fieldAWAYCOLOR.setIsPrimaryKey(false); |
| fieldAWAYCOLOR.setIsIdentity(false); |
| fieldAWAYCOLOR.setUnique(false); |
| fieldAWAYCOLOR.setShouldAllowNull(true); |
| table.addField(fieldAWAYCOLOR); |
| |
| return table; |
| } |
| |
| public TableDefinition buildPLAYERROLESTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("PLAYER_ROLES"); |
| |
| FieldDefinition fieldPLAYERID = new FieldDefinition(); |
| fieldPLAYERID.setName("PLAYER_ID"); |
| fieldPLAYERID.setTypeName("NUMBER"); |
| fieldPLAYERID.setSize(18); |
| fieldPLAYERID.setSubSize(0); |
| fieldPLAYERID.setIsPrimaryKey(false); |
| fieldPLAYERID.setIsIdentity(false); |
| fieldPLAYERID.setUnique(false); |
| fieldPLAYERID.setShouldAllowNull(false); |
| fieldPLAYERID.setForeignKeyFieldName("CMP3_HOCKEY_PLAYER.PLAYERID"); |
| table.addField(fieldPLAYERID); |
| |
| FieldDefinition fieldROLEID = new FieldDefinition(); |
| fieldROLEID.setName("ROLE_ID"); |
| fieldROLEID.setTypeName("NUMBER"); |
| fieldROLEID.setSize(18); |
| fieldROLEID.setSubSize(0); |
| fieldROLEID.setIsPrimaryKey(false); |
| fieldROLEID.setIsIdentity(false); |
| fieldROLEID.setUnique(false); |
| fieldROLEID.setShouldAllowNull(false); |
| fieldROLEID.setForeignKeyFieldName("CMP3_ROLE.ID"); |
| table.addField(fieldROLEID); |
| |
| return table; |
| } |
| |
| public TableDefinition buildROLETable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_ROLE"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(false); |
| fieldID.setUnique(false); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldDESCRIPTION = new FieldDefinition(); |
| fieldDESCRIPTION.setName("DESCRIP"); |
| fieldDESCRIPTION.setTypeName("VARCHAR2"); |
| fieldDESCRIPTION.setSize(50); |
| fieldDESCRIPTION.setSubSize(0); |
| fieldDESCRIPTION.setIsPrimaryKey(false); |
| fieldDESCRIPTION.setIsIdentity(false); |
| fieldDESCRIPTION.setUnique(false); |
| fieldDESCRIPTION.setShouldAllowNull(false); |
| table.addField(fieldDESCRIPTION); |
| |
| return table; |
| } |
| |
| public TableDefinition buildWORLDTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_WORLD"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(false); |
| fieldID.setUnique(false); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| return table; |
| } |
| |
| public TableDefinition buildPLACETable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_PLACE"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(false); |
| fieldID.setUnique(false); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldCOUNTRY_CODE = new FieldDefinition(); |
| fieldCOUNTRY_CODE.setName("COUNTRY_CODE"); |
| fieldCOUNTRY_CODE.setTypeName("VARCHAR2"); |
| fieldCOUNTRY_CODE.setSize(3); |
| fieldCOUNTRY_CODE.setSubSize(0); |
| fieldCOUNTRY_CODE.setIsPrimaryKey(false); |
| fieldCOUNTRY_CODE.setIsIdentity(false); |
| fieldCOUNTRY_CODE.setUnique(false); |
| fieldCOUNTRY_CODE.setShouldAllowNull(true); |
| table.addField(fieldCOUNTRY_CODE); |
| |
| FieldDefinition fieldNAME = new FieldDefinition(); |
| fieldNAME.setName("NAME"); |
| fieldNAME.setTypeName("VARCHAR2"); |
| fieldNAME.setSize(36); |
| fieldNAME.setSubSize(0); |
| fieldNAME.setIsPrimaryKey(false); |
| fieldNAME.setIsIdentity(false); |
| fieldNAME.setUnique(false); |
| fieldNAME.setShouldAllowNull(true); |
| table.addField(fieldNAME); |
| |
| FieldDefinition fieldADDRESS_1 = new FieldDefinition(); |
| fieldADDRESS_1.setName("ADDRESS_1"); |
| fieldADDRESS_1.setTypeName("VARCHAR2"); |
| fieldADDRESS_1.setSize(36); |
| fieldADDRESS_1.setSubSize(0); |
| fieldADDRESS_1.setIsPrimaryKey(false); |
| fieldADDRESS_1.setIsIdentity(false); |
| fieldADDRESS_1.setUnique(false); |
| fieldADDRESS_1.setShouldAllowNull(true); |
| table.addField(fieldADDRESS_1); |
| |
| FieldDefinition fieldADDRESS_2 = new FieldDefinition(); |
| fieldADDRESS_2.setName("ADDRESS_2"); |
| fieldADDRESS_2.setTypeName("VARCHAR2"); |
| fieldADDRESS_2.setSize(36); |
| fieldADDRESS_2.setSubSize(0); |
| fieldADDRESS_2.setIsPrimaryKey(false); |
| fieldADDRESS_2.setIsIdentity(false); |
| fieldADDRESS_2.setUnique(false); |
| fieldADDRESS_2.setShouldAllowNull(true); |
| table.addField(fieldADDRESS_2); |
| |
| return table; |
| } |
| |
| public TableDefinition buildHOCKEY_RINKTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_HOCKEY_RINK"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(false); |
| fieldID.setUnique(false); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldHOCKEY_PUCK_ID = new FieldDefinition(); |
| fieldHOCKEY_PUCK_ID.setName("HOCKEY_PUCK_ID"); |
| fieldHOCKEY_PUCK_ID.setTypeName("NUMBER"); |
| fieldHOCKEY_PUCK_ID.setSize(18); |
| fieldHOCKEY_PUCK_ID.setSubSize(0); |
| fieldHOCKEY_PUCK_ID.setIsPrimaryKey(false); |
| fieldHOCKEY_PUCK_ID.setIsIdentity(false); |
| fieldHOCKEY_PUCK_ID.setUnique(false); |
| fieldHOCKEY_PUCK_ID.setShouldAllowNull(true); |
| fieldHOCKEY_PUCK_ID.setForeignKeyFieldName("CMP3_HOCKEY_PUCK.ID"); |
| table.addField(fieldHOCKEY_PUCK_ID); |
| |
| return table; |
| } |
| |
| public TableDefinition buildHOCKEY_PUCKTable() { |
| TableDefinition table = new TableDefinition(); |
| table.setName("CMP3_HOCKEY_PUCK"); |
| |
| FieldDefinition fieldID = new FieldDefinition(); |
| fieldID.setName("ID"); |
| fieldID.setTypeName("NUMBER"); |
| fieldID.setSize(18); |
| fieldID.setSubSize(0); |
| fieldID.setIsPrimaryKey(true); |
| fieldID.setIsIdentity(false); |
| fieldID.setUnique(false); |
| fieldID.setShouldAllowNull(false); |
| table.addField(fieldID); |
| |
| FieldDefinition fieldNAME = new FieldDefinition(); |
| fieldNAME.setName("NAME"); |
| fieldNAME.setTypeName("VARCHAR2"); |
| fieldNAME.setSize(36); |
| fieldNAME.setSubSize(0); |
| fieldNAME.setIsPrimaryKey(false); |
| fieldNAME.setIsIdentity(false); |
| fieldNAME.setUnique(false); |
| fieldNAME.setShouldAllowNull(true); |
| table.addField(fieldNAME); |
| |
| FieldDefinition fieldSPONSOR_NAME = new FieldDefinition(); |
| fieldSPONSOR_NAME.setName("SPONSOR_NAME"); |
| fieldSPONSOR_NAME.setTypeName("VARCHAR2"); |
| fieldSPONSOR_NAME.setSize(36); |
| fieldSPONSOR_NAME.setSubSize(0); |
| fieldSPONSOR_NAME.setIsPrimaryKey(false); |
| fieldSPONSOR_NAME.setIsIdentity(false); |
| fieldSPONSOR_NAME.setUnique(false); |
| fieldSPONSOR_NAME.setShouldAllowNull(true); |
| table.addField(fieldSPONSOR_NAME); |
| |
| FieldDefinition fieldSPONSOR_VALUE = new FieldDefinition(); |
| fieldSPONSOR_VALUE.setName("SPONSOR_VALUE"); |
| fieldSPONSOR_VALUE.setTypeName("NUMBER"); |
| fieldSPONSOR_VALUE.setSize(18); |
| fieldSPONSOR_VALUE.setSubSize(0); |
| fieldSPONSOR_VALUE.setIsPrimaryKey(false); |
| fieldSPONSOR_VALUE.setIsIdentity(false); |
| fieldSPONSOR_VALUE.setUnique(false); |
| fieldSPONSOR_VALUE.setShouldAllowNull(true); |
| table.addField(fieldSPONSOR_VALUE); |
| |
| return table; |
| } |
| |
| /** |
| * Remove pk constraint as there is a identity field, and H2, HSQL do not allow this. |
| */ |
| @Override |
| public void replaceTables(DatabaseSession session, SchemaManager schemaManager) { |
| if (session.getPlatform().isH2() || session.getPlatform().isHSQL()) { |
| for (Iterator<TableDefinition> iterator = getTableDefinitions().iterator(); iterator.hasNext(); ) { |
| TableDefinition table = iterator.next(); |
| if (table.getName().equals("CMP3_CITYSLICKER") || table.getName().equals("CMP3_COUNTRY_DWELLER")) { |
| for (Iterator<FieldDefinition> fields = table.getFields().iterator(); fields.hasNext(); ) { |
| fields.next().setIsPrimaryKey(false); |
| } |
| } |
| } |
| } |
| super.replaceTables(session, schemaManager); |
| } |
| } |