/******************************************************************************* * Copyright (c) 1998, 2015 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 v1.0 and Eclipse Distribution License v. 1.0 * which accompanies this distribution. * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html * and the Eclipse Distribution License is available at * http://www.eclipse.org/org/documents/edl-v10.php. * * Contributors: * Oracle - initial API and implementation from Oracle TopLink * 09/23/2008-1.1 Guy Pelletier * - 241651: JPA 2.0 Access Type support ******************************************************************************/ package org.eclipse.persistence.testing.models.jpa.xml.merge.relationships; import org.eclipse.persistence.tools.schemaframework.FieldDefinition; import org.eclipse.persistence.tools.schemaframework.TableCreator; import org.eclipse.persistence.tools.schemaframework.TableDefinition; public class RelationshipsTableManager extends TableCreator { public static TableCreator tableCreator; public RelationshipsTableManager() { setName("Relationships"); addTableDefinition(buildCMP3_CUSTOMERTable()); addTableDefinition(buildCMP3_ITEMTable()); addTableDefinition(buildCMP3_ORDERTable()); addTableDefinition(buildCMP3_PARTSLISTTable()); addTableDefinition(buildCMP3_PARTSLIST_ITEMTable()); } public static TableCreator getCreator(){ if (RelationshipsTableManager.tableCreator == null){ RelationshipsTableManager.tableCreator = new RelationshipsTableManager(); } return RelationshipsTableManager.tableCreator; } public static TableDefinition buildCMP3_CUSTOMERTable() { TableDefinition table = new TableDefinition(); table.setName("CMP3_XML_MERGE_CUSTOMER"); FieldDefinition fieldCITY = new FieldDefinition(); fieldCITY.setName("CITY"); fieldCITY.setTypeName("VARCHAR2"); fieldCITY.setSize(80); fieldCITY.setSubSize(0); fieldCITY.setIsPrimaryKey(false); fieldCITY.setIsIdentity(false); fieldCITY.setUnique(false); fieldCITY.setShouldAllowNull(true); table.addField(fieldCITY); FieldDefinition fieldCUST_ID = new FieldDefinition(); fieldCUST_ID.setName("CUST_ID"); fieldCUST_ID.setTypeName("NUMBER"); fieldCUST_ID.setSize(15); fieldCUST_ID.setSubSize(0); fieldCUST_ID.setIsPrimaryKey(true); fieldCUST_ID.setIsIdentity(false); fieldCUST_ID.setUnique(false); fieldCUST_ID.setShouldAllowNull(false); table.addField(fieldCUST_ID); FieldDefinition fieldNAME = new FieldDefinition(); fieldNAME.setName("NAME"); fieldNAME.setTypeName("VARCHAR2"); fieldNAME.setSize(80); fieldNAME.setSubSize(0); fieldNAME.setIsPrimaryKey(false); fieldNAME.setIsIdentity(false); fieldNAME.setUnique(false); fieldNAME.setShouldAllowNull(true); table.addField(fieldNAME); FieldDefinition field10 = new FieldDefinition(); field10.setName("CUST_VERSION"); field10.setTypeName("NUMERIC"); field10.setSize(15); field10.setShouldAllowNull(true ); field10.setIsPrimaryKey(false ); field10.setUnique(false ); field10.setIsIdentity(false ); table.addField(field10); return table; } public static TableDefinition buildCMP3_ITEMTable() { TableDefinition table = new TableDefinition(); table.setName("CMP3_XML_MERGE_ITEM"); FieldDefinition fieldDESCRIPTION = new FieldDefinition(); fieldDESCRIPTION.setName("DESCRIPTION"); fieldDESCRIPTION.setTypeName("VARCHAR2"); fieldDESCRIPTION.setSize(80); fieldDESCRIPTION.setSubSize(0); fieldDESCRIPTION.setIsPrimaryKey(false); fieldDESCRIPTION.setIsIdentity(false); fieldDESCRIPTION.setUnique(false); fieldDESCRIPTION.setShouldAllowNull(true); table.addField(fieldDESCRIPTION); FieldDefinition fieldITEM_ID = new FieldDefinition(); fieldITEM_ID.setName("ID"); fieldITEM_ID.setTypeName("NUMBER"); fieldITEM_ID.setSize(15); fieldITEM_ID.setSubSize(0); fieldITEM_ID.setIsPrimaryKey(true); fieldITEM_ID.setIsIdentity(false); fieldITEM_ID.setUnique(false); fieldITEM_ID.setShouldAllowNull(false); table.addField(fieldITEM_ID); FieldDefinition fieldNAME = new FieldDefinition(); fieldNAME.setName("NAME"); fieldNAME.setTypeName("VARCHAR2"); fieldNAME.setSize(80); fieldNAME.setSubSize(0); fieldNAME.setIsPrimaryKey(false); fieldNAME.setIsIdentity(false); fieldNAME.setUnique(false); fieldNAME.setShouldAllowNull(true); table.addField(fieldNAME); FieldDefinition field10 = new FieldDefinition(); field10.setName("ITEM_VERSION"); field10.setTypeName("NUMERIC"); field10.setSize(15); field10.setShouldAllowNull(true ); field10.setIsPrimaryKey(false ); field10.setUnique(false ); field10.setIsIdentity(false ); table.addField(field10); FieldDefinition fieldIMAGE = new FieldDefinition(); fieldIMAGE.setName("IMAGE"); fieldIMAGE.setTypeName("BLOB"); fieldIMAGE.setSize(1280); fieldIMAGE.setShouldAllowNull(true); table.addField(fieldIMAGE); return table; } public static TableDefinition buildCMP3_ORDERTable() { TableDefinition table = new TableDefinition(); table.setName("CMP3_XML_MERGE_ORDER"); FieldDefinition fieldCUST_ID = new FieldDefinition(); fieldCUST_ID.setName("CUSTOMER_CUST_ID"); fieldCUST_ID.setTypeName("NUMBER"); fieldCUST_ID.setSize(15); fieldCUST_ID.setSubSize(0); fieldCUST_ID.setIsPrimaryKey(false); fieldCUST_ID.setIsIdentity(false); fieldCUST_ID.setUnique(false); fieldCUST_ID.setShouldAllowNull(true); table.addField(fieldCUST_ID); FieldDefinition fieldITEM_ID = new FieldDefinition(); fieldITEM_ID.setName("ITEM_ID"); fieldITEM_ID.setTypeName("NUMBER"); fieldITEM_ID.setSize(15); fieldITEM_ID.setSubSize(0); fieldITEM_ID.setIsPrimaryKey(false); fieldITEM_ID.setIsIdentity(false); fieldITEM_ID.setUnique(false); fieldITEM_ID.setShouldAllowNull(true); fieldITEM_ID.setForeignKeyFieldName("CMP3_XML_MERGE_ITEM.ID"); table.addField(fieldITEM_ID); FieldDefinition fieldORDER_ID = new FieldDefinition(); fieldORDER_ID.setName("ORDER_ID"); fieldORDER_ID.setTypeName("NUMBER"); fieldORDER_ID.setSize(15); fieldORDER_ID.setSubSize(0); fieldORDER_ID.setIsPrimaryKey(true); fieldORDER_ID.setIsIdentity(false); fieldORDER_ID.setUnique(false); fieldORDER_ID.setShouldAllowNull(false); table.addField(fieldORDER_ID); FieldDefinition fieldQUANTITY = new FieldDefinition(); fieldQUANTITY.setName("QUANTITY"); fieldQUANTITY.setTypeName("NUMBER"); fieldQUANTITY.setSize(15); fieldQUANTITY.setSubSize(0); fieldQUANTITY.setIsPrimaryKey(false); fieldQUANTITY.setIsIdentity(false); fieldQUANTITY.setUnique(false); fieldQUANTITY.setShouldAllowNull(false); table.addField(fieldQUANTITY); FieldDefinition fieldSHIP_ADDR = new FieldDefinition(); fieldSHIP_ADDR.setName("SHIP_ADDR"); fieldSHIP_ADDR.setTypeName("VARCHAR2"); fieldSHIP_ADDR.setSize(80); fieldSHIP_ADDR.setSubSize(0); fieldSHIP_ADDR.setIsPrimaryKey(false); fieldSHIP_ADDR.setIsIdentity(false); fieldSHIP_ADDR.setUnique(false); fieldSHIP_ADDR.setShouldAllowNull(true); table.addField(fieldSHIP_ADDR); FieldDefinition field10 = new FieldDefinition(); field10.setName("ORDER_VERSION"); field10.setTypeName("NUMERIC"); field10.setSize(15); field10.setShouldAllowNull(true ); field10.setIsPrimaryKey(false ); field10.setUnique(false ); field10.setIsIdentity(false ); table.addField(field10); return table; } public static TableDefinition buildCMP3_PARTSLISTTable() { TableDefinition table = new TableDefinition(); table.setName("CMP3_XML_MERGE_PARTSLIST"); FieldDefinition fieldPARTSLIST_ID = new FieldDefinition(); fieldPARTSLIST_ID.setName("ID"); fieldPARTSLIST_ID.setTypeName("NUMBER"); fieldPARTSLIST_ID.setSize(15); fieldPARTSLIST_ID.setSubSize(0); fieldPARTSLIST_ID.setIsPrimaryKey(true); fieldPARTSLIST_ID.setIsIdentity(false); fieldPARTSLIST_ID.setUnique(false); fieldPARTSLIST_ID.setShouldAllowNull(false); table.addField(fieldPARTSLIST_ID); FieldDefinition field10 = new FieldDefinition(); field10.setName("VERSION"); field10.setTypeName("NUMERIC"); field10.setSize(15); field10.setShouldAllowNull(true ); field10.setIsPrimaryKey(false ); field10.setUnique(false ); field10.setIsIdentity(false ); table.addField(field10); return table; } public static TableDefinition buildCMP3_PARTSLIST_ITEMTable() { TableDefinition table = new TableDefinition(); table.setName("CMP3_XML_MERGE_PARTSLIST_ITEM"); // SECTION: FIELD org.eclipse.persistence.tools.schemaframework.FieldDefinition field = new org.eclipse.persistence.tools.schemaframework.FieldDefinition(); field.setName("PARTSLIST_ID"); field.setTypeName("NUMERIC"); field.setSize(15); field.setShouldAllowNull(false ); field.setIsPrimaryKey(true ); field.setUnique(false ); field.setIsIdentity(false ); field.setForeignKeyFieldName("CMP3_XML_MERGE_ITEM.ID"); table.addField(field); // SECTION: FIELD org.eclipse.persistence.tools.schemaframework.FieldDefinition field1 = new org.eclipse.persistence.tools.schemaframework.FieldDefinition(); field1.setName("ITEM_ID"); field1.setTypeName("NUMERIC"); field1.setSize(15); field1.setShouldAllowNull(false ); field1.setIsPrimaryKey(true ); field1.setUnique(false ); field1.setIsIdentity(false ); field1.setForeignKeyFieldName("CMP3_XML_MERGE_PARTSLIST.ID"); table.addField(field1); return table; } }