Ignore:
Timestamp:
02/04/10 21:56:24 (2 years ago)
Author:
kasper
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • MetadataBeans/trunk/src/main/java/org/eobjects/metamodel/QueryPostprocessDataContextStrategy.java

    r886 r887  
    4141import org.eobjects.metamodel.schema.Column; 
    4242import org.eobjects.metamodel.schema.ColumnType; 
     43import org.eobjects.metamodel.schema.MutableColumn; 
     44import org.eobjects.metamodel.schema.ImmutableRelationship; 
     45import org.eobjects.metamodel.schema.MutableSchema; 
     46import org.eobjects.metamodel.schema.MutableTable; 
    4347import org.eobjects.metamodel.schema.Relationship; 
    4448import org.eobjects.metamodel.schema.Schema; 
     
    354358        private Schema getInformationSchema() { 
    355359                // Create schema 
    356                 Schema informationSchema = new Schema(INFORMATION_SCHEMA_NAME); 
    357                 Table tablesTable = new Table("tables", TableType.TABLE, 
     360                MutableSchema informationSchema = new MutableSchema(INFORMATION_SCHEMA_NAME); 
     361                MutableTable tablesTable = new MutableTable("tables", TableType.TABLE, 
    358362                                informationSchema); 
    359                 Table columnsTable = new Table("columns", TableType.TABLE, 
     363                MutableTable columnsTable = new MutableTable("columns", TableType.TABLE, 
    360364                                informationSchema); 
    361                 Table relationshipsTable = new Table("relationships", TableType.TABLE, 
     365                MutableTable relationshipsTable = new MutableTable("relationships", TableType.TABLE, 
    362366                                informationSchema); 
    363367                informationSchema.addTable(tablesTable).addTable(columnsTable) 
     
    365369 
    366370                // Create "tables" table: name, type, num_columns, remarks 
    367                 tablesTable.addColumn(new Column("name", ColumnType.VARCHAR, 
     371                tablesTable.addColumn(new MutableColumn("name", ColumnType.VARCHAR, 
    368372                                tablesTable, 0, false)); 
    369                 tablesTable.addColumn(new Column("type", ColumnType.VARCHAR, 
     373                tablesTable.addColumn(new MutableColumn("type", ColumnType.VARCHAR, 
    370374                                tablesTable, 1, true)); 
    371                 tablesTable.addColumn(new Column("num_columns", ColumnType.INTEGER, 
     375                tablesTable.addColumn(new MutableColumn("num_columns", ColumnType.INTEGER, 
    372376                                tablesTable, 2, true)); 
    373                 tablesTable.addColumn(new Column("remarks", ColumnType.VARCHAR, 
     377                tablesTable.addColumn(new MutableColumn("remarks", ColumnType.VARCHAR, 
    374378                                tablesTable, 3, true)); 
    375379 
    376380                // Create "columns" table: name, type, native_type, size, nullable, 
    377381                // indexed, table, remarks 
    378                 columnsTable.addColumn(new Column("name", ColumnType.VARCHAR, 
     382                columnsTable.addColumn(new MutableColumn("name", ColumnType.VARCHAR, 
    379383                                columnsTable, 0, false)); 
    380                 columnsTable.addColumn(new Column("type", ColumnType.VARCHAR, 
     384                columnsTable.addColumn(new MutableColumn("type", ColumnType.VARCHAR, 
    381385                                columnsTable, 1, true)); 
    382                 columnsTable.addColumn(new Column("native_type", ColumnType.VARCHAR, 
     386                columnsTable.addColumn(new MutableColumn("native_type", ColumnType.VARCHAR, 
    383387                                columnsTable, 2, true)); 
    384                 columnsTable.addColumn(new Column("size", ColumnType.INTEGER, 
     388                columnsTable.addColumn(new MutableColumn("size", ColumnType.INTEGER, 
    385389                                columnsTable, 3, true)); 
    386                 columnsTable.addColumn(new Column("nullable", ColumnType.BOOLEAN, 
     390                columnsTable.addColumn(new MutableColumn("nullable", ColumnType.BOOLEAN, 
    387391                                columnsTable, 4, true)); 
    388                 columnsTable.addColumn(new Column("indexed", ColumnType.BOOLEAN, 
     392                columnsTable.addColumn(new MutableColumn("indexed", ColumnType.BOOLEAN, 
    389393                                columnsTable, 5, true)); 
    390                 columnsTable.addColumn(new Column("table", ColumnType.VARCHAR, 
     394                columnsTable.addColumn(new MutableColumn("table", ColumnType.VARCHAR, 
    391395                                columnsTable, 6, false)); 
    392                 columnsTable.addColumn(new Column("remarks", ColumnType.VARCHAR, 
     396                columnsTable.addColumn(new MutableColumn("remarks", ColumnType.VARCHAR, 
    393397                                columnsTable, 7, true)); 
    394398 
    395399                // Create "relationships" table: primary_table, primary_column, 
    396400                // foreign_table, foreign_column 
    397                 relationshipsTable.addColumn(new Column("primary_table", 
     401                relationshipsTable.addColumn(new MutableColumn("primary_table", 
    398402                                ColumnType.VARCHAR, relationshipsTable, 0, false)); 
    399                 relationshipsTable.addColumn(new Column("primary_column", 
     403                relationshipsTable.addColumn(new MutableColumn("primary_column", 
    400404                                ColumnType.VARCHAR, relationshipsTable, 1, false)); 
    401                 relationshipsTable.addColumn(new Column("foreign_table", 
     405                relationshipsTable.addColumn(new MutableColumn("foreign_table", 
    402406                                ColumnType.VARCHAR, relationshipsTable, 2, false)); 
    403                 relationshipsTable.addColumn(new Column("foreign_column", 
     407                relationshipsTable.addColumn(new MutableColumn("foreign_column", 
    404408                                ColumnType.VARCHAR, relationshipsTable, 3, false)); 
    405409 
    406                 Relationship.createRelationship(tablesTable.getColumnByName("name"), 
     410                ImmutableRelationship.createRelationship(tablesTable.getColumnByName("name"), 
    407411                                columnsTable.getColumnByName("table")); 
    408                 Relationship.createRelationship(tablesTable.getColumnByName("name"), 
     412                ImmutableRelationship.createRelationship(tablesTable.getColumnByName("name"), 
    409413                                relationshipsTable.getColumnByName("primary_table")); 
    410                 Relationship.createRelationship(tablesTable.getColumnByName("name"), 
     414                ImmutableRelationship.createRelationship(tablesTable.getColumnByName("name"), 
    411415                                relationshipsTable.getColumnByName("foreign_table")); 
    412                 Relationship.createRelationship(columnsTable.getColumnByName("name"), 
     416                ImmutableRelationship.createRelationship(columnsTable.getColumnByName("name"), 
    413417                                relationshipsTable.getColumnByName("primary_column")); 
    414                 Relationship.createRelationship(columnsTable.getColumnByName("name"), 
     418                ImmutableRelationship.createRelationship(columnsTable.getColumnByName("name"), 
    415419                                relationshipsTable.getColumnByName("foreign_column")); 
    416420 
Note: See TracChangeset for help on using the changeset viewer.