Package org.apache.metamodel

Examples of org.apache.metamodel.DataContext


        "/dependencies/dependency", new String[] {
            "/dependencies/dependency/artifactId",
            "/dependencies/dependency/groupId",
            "/dependencies/dependency/version",
            "/dependencies/dependency/scope" });
    DataContext dc = new XmlSaxDataContext(new File(
        "src/test/resources/xml_input_flatten_tables.xml"), tableDef);

    final Schema schema = dc.getDefaultSchema();
    assertEquals("Schema[name=/dependencies]", schema.toString());
    assertEquals("[/dependency]", Arrays.toString(schema.getTableNames()));

    final Table table = schema.getTableByName("/dependency");
    assertEquals("[row_id, /artifactId, /groupId, /version, /scope]",
        Arrays.toString(table.getColumnNames()));

    // perform a regular query
    DataSet ds = dc.query().from(table).select(table.getColumns())
        .execute();
    assertTrue(ds.next());
    assertEquals("Row[values=[0, joda-time, joda-time, 1.5.2, compile]]",
        ds.getRow().toString());

    assertTrue(ds.next());
    assertEquals("Row[values=[1, commons-math, commons-math, 1.1, null]]",
        ds.getRow().toString());

    assertTrue(ds.next());
    assertTrue(ds.next());
    assertTrue(ds.next());
    assertTrue(ds.next());
    assertEquals("Row[values=[5, hsqldb, hsqldb, 1.8.0.7, null]]", ds
        .getRow().toString());

    assertTrue(ds.next());
    assertTrue(ds.next());
    assertTrue(ds.next());
    assertTrue(ds.next());
    assertTrue(ds.next());
    assertEquals(
        "Row[values=[10, mysql-connector-java, mysql, 5.1.6, test]]",
        ds.getRow().toString());
    assertFalse(ds.next());
    ds.close();

    // perform a constrained query
    Query q = dc.query().from(table).select("row_id").and("/groupId")
        .where("/scope").isNotNull().toQuery();
    q.setMaxRows(2);
    ds = dc.executeQuery(q);

    assertTrue(ds.next());
    assertEquals("Row[values=[0, joda-time]]", ds.getRow().toString());
    assertTrue(ds.next());
    assertEquals("Row[values=[6, junit]]", ds.getRow().toString());
View Full Code Here


            "index(/root/organization)" });
    final XmlSaxTableDef organizationTableDef = new XmlSaxTableDef(
        "/root/organization", new String[] { "/root/organization/name",
            "/root/organization@type" });

    final DataContext dc = new XmlSaxDataContext(
        new File(
            "src/test/resources/xml_input_parent_and_child_relationship.xml"),
        employeeTableDef, organizationTableDef);

    final Schema schema = dc.getDefaultSchema();
    assertEquals("Schema[name=/root]", schema.toString());
    assertEquals("[/employee, /organization]",
        Arrays.toString(schema.getTableNames()));

    // organization assertions
    final Table organizationTable = schema.getTableByName("/organization");
    {
      assertEquals("[row_id, /name, @type]",
          Arrays.toString(organizationTable.getColumnNames()));

      DataSet ds = dc.query().from(organizationTable)
          .select(organizationTable.getColumns()).execute();
      assertTrue(ds.next());
      assertEquals("Row[values=[0, Company A, governmental]]", ds
          .getRow().toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[1, Company B, company]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[2, Company C, company]]", ds.getRow()
          .toString());
      assertFalse(ds.next());
      ds.close();
    }

    // employee assertions
    final Table employeeTable = schema.getTableByName("/employee");
    {
      assertEquals(
          "[row_id, /name, /gender, index(/root/organization/employees), index(/root/organization)]",
          Arrays.toString(employeeTable.getColumnNames()));

      DataSet ds = dc.query().from(employeeTable)
          .select(employeeTable.getColumns()).execute();
      assertTrue(ds.next());
      assertEquals("Row[values=[0, John Doe, M, 0, 0]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[1, Jane Doe, F, 0, 0]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[2, Peter, M, 1, 1]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[3, Bob, M, 1, 1]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[4, Cindy, F, 1, 1]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[5, John, M, 1, 1]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[6, James, M, 2, 2]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[7, Suzy, F, 2, 2]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[8, Carla, F, 3, 2]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[9, Vincent, M, 3, 2]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[10, Barbara, F, 3, 2]]", ds.getRow()
          .toString());
      assertFalse(ds.next());
      ds.close();
    }

    // do a join
    {
      Column fk = employeeTable
          .getColumnByName("index(/root/organization)");
      assertNotNull(fk);
      Column empName = employeeTable.getColumnByName("/name");
      assertNotNull(empName);
      Column orgId = organizationTable.getColumnByName("row_id");
      assertNotNull(orgId);
      Column orgName = organizationTable.getColumnByName("/name");
      assertNotNull(orgName);

      Query q = dc.query().from(employeeTable)
          .innerJoin(organizationTable).on(fk, orgId).select(empName)
          .as("employee").select(orgName).as("company").toQuery();

      assertEquals(
          "SELECT /employee./name AS employee, /organization./name AS company "
              + "FROM /root./employee INNER JOIN /root./organization "
              + "ON /employee.index(/root/organization) = /organization.row_id",
          q.toSql());

      DataSet ds = dc.executeQuery(q);
      assertTrue(ds.next());
      assertEquals("Row[values=[John Doe, Company A]]", ds.getRow()
          .toString());
      assertTrue(ds.next());
      assertEquals("Row[values=[Jane Doe, Company A]]", ds.getRow()
View Full Code Here

            col.insert(dbRow);
        }

        // Instantiate the actual data context
        final DataContext dataContext = new MongoDbDataContext(db);

        assertEquals("[" + getCollectionName() + ", system.indexes]", Arrays.toString(dataContext.getDefaultSchema().getTableNames()));
        Table table = dataContext.getDefaultSchema().getTableByName(getCollectionName());
        assertEquals("[_id, baz, foo, id, list, name]", Arrays.toString(table.getColumnNames()));

        assertEquals(ColumnType.MAP, table.getColumnByName("baz").getType());
        assertEquals(ColumnType.VARCHAR, table.getColumnByName("foo").getType());
        assertEquals(ColumnType.LIST, table.getColumnByName("list").getType());
        assertEquals(ColumnType.INTEGER, table.getColumnByName("id").getType());
        assertEquals(ColumnType.ROWID, table.getColumnByName("_id").getType());

        DataSet ds = dataContext.query().from(getCollectionName()).select("name").and("foo").and("baz").and("list")
                .where("id").greaterThan(800).or("foo").isEquals("bar").execute();
        assertEquals(MongoDbDataSet.class, ds.getClass());
        assertFalse(((MongoDbDataSet) ds).isQueryPostProcessed());
        try {
            assertTrue(ds.next());
            assertEquals(
                    "Row[values=[record no. 0, bar, {count=0, constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , 0]]]",
                    ds.getRow().toString());

            assertTrue(ds.next());
            assertEquals(
                    "Row[values=[record no. 5, bar, {count=5, constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , 5]]]",
                    ds.getRow().toString());

            assertTrue(ds.next());
            assertEquals(
                    "Row[values=[record no. 10, bar, {count=10, constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , 10]]]",
                    ds.getRow().toString());

            for (int j = 15; j < 801; j++) {
                if (j % 5 == 0) {
                    assertTrue(ds.next());
                    assertEquals("Row[values=[record no. " + j + ", bar, {count=" + j
                            + ", constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , " + j + "]]]", ds.getRow()
                            .toString());
                }
            }

            assertTrue(ds.next());
            assertTrue(ds.getRow().getValue(2) instanceof Map);
            assertEquals(LinkedHashMap.class, ds.getRow().getValue(2).getClass());

            assertTrue("unexpected type: " + ds.getRow().getValue(3).getClass(),
                    ds.getRow().getValue(3) instanceof List);
            assertEquals(BasicDBList.class, ds.getRow().getValue(3).getClass());

            assertEquals(
                    "Row[values=[record no. 801, baz, {count=801, constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , 801]]]",
                    ds.getRow().toString());
            assertTrue(ds.next());
            assertEquals(
                    "Row[values=[record no. 802, baz, {count=802, constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , 802]]]",
                    ds.getRow().toString());
            assertTrue(ds.next());
            assertEquals(
                    "Row[values=[record no. 803, baz, {count=803, constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , 803]]]",
                    ds.getRow().toString());
            assertTrue(ds.next());
            assertEquals(
                    "Row[values=[record no. 804, baz, {count=804, constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , 804]]]",
                    ds.getRow().toString());
            assertTrue(ds.next());
            assertEquals(
                    "Row[values=[record no. 805, bar, {count=805, constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , 805]]]",
                    ds.getRow().toString());

            for (int i = 0; i < 194; i++) {
                assertTrue(ds.next());
            }
            assertEquals(
                    "Row[values=[record no. 999, baz, {count=999, constant=foobarbaz}, [ \"l1\" , \"l2\" , \"l3\" , 999]]]",
                    ds.getRow().toString());
            assertFalse(ds.next());
        } finally {
            ds.close();
        }

        ds = dataContext.query().from(getCollectionName()).select("id").and("name").where("id").in(2, 6, 8, 9)
                .execute();
        assertTrue(ds.next());
        assertEquals("Row[values=[2, record no. 2]]", ds.getRow().toString());
        assertTrue(ds.next());
        assertEquals("Row[values=[6, record no. 6]]", ds.getRow().toString());
        assertTrue(ds.next());
        assertEquals("Row[values=[8, record no. 8]]", ds.getRow().toString());
        assertTrue(ds.next());
        assertEquals("Row[values=[9, record no. 9]]", ds.getRow().toString());
        assertFalse(ds.next());
        ds.close();

        ds = dataContext.query().from(getCollectionName()).select("id").and("name").where("foo").isEquals("bar")
                .execute();
        assertEquals(MongoDbDataSet.class, ds.getClass());
        assertFalse(((MongoDbDataSet) ds).isQueryPostProcessed());

        try {
            List<Object[]> objectArrays = ds.toObjectArrays();
            assertEquals(200, objectArrays.size());
            assertEquals("[0, record no. 0]", Arrays.toString(objectArrays.get(0)));
        } finally {
            ds.close();
        }

        // test a primary key lookup query
        BasicDBObject dbRow = new BasicDBObject();
        dbRow.put("_id", 123456);
        dbRow.put("id", 123456);
        dbRow.put("name", "record no. " + 123456);
        dbRow.put("foo", "bar123456");
        BasicDBObject nestedObj = new BasicDBObject();
        nestedObj.put("count", 123456);
        nestedObj.put("constant", "foobarbaz");
        dbRow.put("baz", nestedObj);

        dbRow.put("list", Arrays.<Object> asList("l1", "l2", "l3", 123456));

        col.insert(dbRow);

        ds = dataContext.query().from(getCollectionName()).select("id").and("name").where("_id").eq(123456).execute();
        assertTrue(ds.next());
        assertEquals("Row[values=[123456, record no. 123456]]", ds.getRow().toString());
        assertFalse(ds.next());

        // do a query that we cannot push to mongo
        ds = dataContext.query().from(getCollectionName())
                .select(FunctionType.SUM, dataContext.getDefaultSchema().getTables()[0].getColumnByName("id"))
                .where("foo").isEquals("bar").execute();
        assertEquals(InMemoryDataSet.class, ds.getClass());

        ds.close();
    }
View Full Code Here

    public void testGetSchemaNames() throws Exception {
        if (!isConfigured()) {
            return;
        }
        DataContext dc = new JdbcDataContext(getConnection());
        String[] schemaNames = dc.getSchemaNames();

        String concatSchemas = Arrays.toString(schemaNames);

        // In order to allow the database to be used for other purposes than
        // this integration test, we will not make an exact assertion as to
        // which schema names exist, but just assert that HR and the default
        // oracle schemas exist.
        assertTrue(concatSchemas.indexOf("foobar_schema_that_does_not_exist") == -1);
        assertTrue(concatSchemas.indexOf("HR") != -1);
        assertTrue(concatSchemas.indexOf("SYSTEM") != -1);
        assertTrue(concatSchemas.indexOf("XDB") != -1);
        assertTrue(schemaNames.length > 8);

        Schema schema = dc.getDefaultSchema();
        assertEquals("HR", schema.getName());
    }
View Full Code Here

  public void testAlternativeConnectionString() throws Exception {
      if (!isConfigured()) {
            return;
        }
       
    DataContext dc = new JdbcDataContext(getConnection(), TableType.DEFAULT_TABLE_TYPES, "sakila");
    Schema[] schemas = dc.getSchemas();
    assertEquals("[Schema[name=mysql], Schema[name=performance_schema], Schema[name=portal], "
        + "Schema[name=sakila], Schema[name=world]]", Arrays.toString(schemas));

    Table table = dc.getSchemaByName("sakila").getTableByName("film");
    Query q = new Query().from(table).select(table.getColumns());
    DataSet data = dc.executeQuery(q);
    TableModel tableModel = new DataSetTableModel(data);
    assertEquals(13, tableModel.getColumnCount());
    assertEquals(1000, tableModel.getRowCount());
  }
View Full Code Here

  public void testGetDefaultSchema() throws Exception {
      if (!isConfigured()) {
            return;
        }
       
    DataContext dc = new JdbcDataContext(getConnection());
    Schema schema = dc.getDefaultSchema();
    assertEquals("sakila", schema.getName());
  }
View Full Code Here

  public void testExecuteQuery() throws Exception {
      if (!isConfigured()) {
            return;
        }
       
    DataContext dc = new JdbcDataContext(getConnection());
    Schema schema = dc.getDefaultSchema();
    Table actorTable = schema.getTableByName("actor");
    assertEquals(
        "[Column[name=actor_id,columnNumber=0,type=SMALLINT,nullable=false,nativeType=SMALLINT UNSIGNED,columnSize=5], Column[name=first_name,columnNumber=1,type=VARCHAR,nullable=false,nativeType=VARCHAR,columnSize=45], Column[name=last_name,columnNumber=2,type=VARCHAR,nullable=false,nativeType=VARCHAR,columnSize=45], Column[name=last_update,columnNumber=3,type=TIMESTAMP,nullable=false,nativeType=TIMESTAMP,columnSize=19]]",
        Arrays.toString(actorTable.getColumns()));
    Table filmTable = schema.getTableByName("film");
    assertEquals(
        "[Column[name=film_id,columnNumber=0,type=SMALLINT,nullable=false,nativeType=SMALLINT UNSIGNED,columnSize=5], Column[name=title,columnNumber=1,type=VARCHAR,nullable=false,nativeType=VARCHAR,columnSize=255], Column[name=description,columnNumber=2,type=LONGVARCHAR,nullable=true,nativeType=TEXT,columnSize=65535], Column[name=release_year,columnNumber=3,type=DATE,nullable=true,nativeType=YEAR,columnSize=0], Column[name=language_id,columnNumber=4,type=TINYINT,nullable=false,nativeType=TINYINT UNSIGNED,columnSize=3], Column[name=original_language_id,columnNumber=5,type=TINYINT,nullable=true,nativeType=TINYINT UNSIGNED,columnSize=3], Column[name=rental_duration,columnNumber=6,type=TINYINT,nullable=false,nativeType=TINYINT UNSIGNED,columnSize=3], Column[name=rental_rate,columnNumber=7,type=DECIMAL,nullable=false,nativeType=DECIMAL,columnSize=4], Column[name=length,columnNumber=8,type=SMALLINT,nullable=true,nativeType=SMALLINT UNSIGNED,columnSize=5], Column[name=replacement_cost,columnNumber=9,type=DECIMAL,nullable=false,nativeType=DECIMAL,columnSize=5], Column[name=rating,columnNumber=10,type=CHAR,nullable=true,nativeType=ENUM,columnSize=5], Column[name=special_features,columnNumber=11,type=CHAR,nullable=true,nativeType=SET,columnSize=54], Column[name=last_update,columnNumber=12,type=TIMESTAMP,nullable=false,nativeType=TIMESTAMP,columnSize=19]]",
        Arrays.toString(filmTable.getColumns()));
    Table filmActorJoinTable = schema.getTableByName("film_actor");
    assertEquals(
        "[Column[name=actor_id,columnNumber=0,type=SMALLINT,nullable=false,nativeType=SMALLINT UNSIGNED,columnSize=5], "
            + "Column[name=film_id,columnNumber=1,type=SMALLINT,nullable=false,nativeType=SMALLINT UNSIGNED,columnSize=5], "
            + "Column[name=last_update,columnNumber=2,type=TIMESTAMP,nullable=false,nativeType=TIMESTAMP,columnSize=19]]",
        Arrays.toString(filmActorJoinTable.getColumns()));

    Query q = new Query();
    q.from(new FromItem(actorTable).setAlias("a"));
    q.select(actorTable.getColumns());
    q.getSelectClause().getItem(0).setAlias("foo-bar");
    assertEquals(
        "SELECT a.`actor_id` AS foo-bar, a.`first_name`, a.`last_name`, a.`last_update` FROM sakila.`actor` a",
        q.toString());
    FilterItem f1 = new FilterItem(q.getSelectClause().getItem(0), OperatorType.EQUALS_TO, 5);
    FilterItem f2 = new FilterItem(q.getSelectClause().getItem(0), OperatorType.EQUALS_TO, 8);
    q.where(new FilterItem(f1, f2));

    DataSet dataSet = dc.executeQuery(q);
    TableModel tableModel = new DataSetTableModel(dataSet);
    assertEquals(4, tableModel.getColumnCount());
    assertEquals(2, tableModel.getRowCount());
    assertEquals("LOLLOBRIGIDA", tableModel.getValueAt(0, 2));

    q.setMaxRows(1);
    dataSet = dc.executeQuery(q);
    tableModel = new DataSetTableModel(dataSet);
    assertEquals(4, tableModel.getColumnCount());
    assertEquals(1, tableModel.getRowCount());
    assertEquals("LOLLOBRIGIDA", tableModel.getValueAt(0, 2));
   
    q.setMaxRows(1);
    q.setFirstRow(2);
        dataSet = dc.executeQuery(q);
        tableModel = new DataSetTableModel(dataSet);
        assertEquals(4, tableModel.getColumnCount());
        assertEquals(1, tableModel.getRowCount());
        assertEquals("JOHANSSON", tableModel.getValueAt(0, 2));

    q.getWhereClause().removeItems();
    q.setMaxRows(25);
    q.setFirstRow(1);
    dataSet = dc.executeQuery(q);
    tableModel = new DataSetTableModel(dataSet);
    assertEquals(4, tableModel.getColumnCount());
    assertEquals(25, tableModel.getRowCount());
    assertEquals("GUINESS", tableModel.getValueAt(0, 2).toString());
  }
View Full Code Here

  public void testFilmQuery() throws Exception {
      if (!isConfigured()) {
            return;
        }
       
    DataContext dc = new JdbcDataContext(getConnection());
    Table table = dc.getDefaultSchema().getTableByName("film");
    Query q = new Query().select(table.getColumns()).from(table).setMaxRows(400);
    dc.executeQuery(q);
  }
View Full Code Here

  public void testGetSchema() throws Exception {
      if (!isConfigured()) {
            return;
        }
       
    DataContext dc = new JdbcDataContext(getConnection());
    Schema[] schemas = dc.getSchemas();
    assertEquals(5, schemas.length);
    Schema schema = dc.getDefaultSchema();

    assertEquals("[Table[name=actor,type=TABLE,remarks=], " + "Table[name=address,type=TABLE,remarks=], "
        + "Table[name=category,type=TABLE,remarks=], " + "Table[name=city,type=TABLE,remarks=], "
        + "Table[name=country,type=TABLE,remarks=], " + "Table[name=customer,type=TABLE,remarks=], "
        + "Table[name=film,type=TABLE,remarks=], " + "Table[name=film_actor,type=TABLE,remarks=], "
        + "Table[name=film_category,type=TABLE,remarks=], " + "Table[name=film_text,type=TABLE,remarks=], "
        + "Table[name=inventory,type=TABLE,remarks=], " + "Table[name=language,type=TABLE,remarks=], "
        + "Table[name=payment,type=TABLE,remarks=], " + "Table[name=rental,type=TABLE,remarks=], "
        + "Table[name=staff,type=TABLE,remarks=], " + "Table[name=store,type=TABLE,remarks=], "
        + "Table[name=actor_info,type=VIEW,remarks=], " + "Table[name=customer_list,type=VIEW,remarks=], "
        + "Table[name=film_list,type=VIEW,remarks=], "
        + "Table[name=nicer_but_slower_film_list,type=VIEW,remarks=], "
        + "Table[name=sales_by_film_category,type=VIEW,remarks=], "
        + "Table[name=sales_by_store,type=VIEW,remarks=], " + "Table[name=staff_list,type=VIEW,remarks=]]",
        Arrays.toString(schema.getTables()));

    Table filmTable = schema.getTableByName("film");
    assertEquals(
        "[Column[name=film_id,columnNumber=0,type=SMALLINT,nullable=false,nativeType=SMALLINT UNSIGNED,columnSize=5], "
            + "Column[name=title,columnNumber=1,type=VARCHAR,nullable=false,nativeType=VARCHAR,columnSize=255], "
            + "Column[name=description,columnNumber=2,type=LONGVARCHAR,nullable=true,nativeType=TEXT,columnSize=65535], "
            + "Column[name=release_year,columnNumber=3,type=DATE,nullable=true,nativeType=YEAR,columnSize=0], "
            + "Column[name=language_id,columnNumber=4,type=TINYINT,nullable=false,nativeType=TINYINT UNSIGNED,columnSize=3], "
            + "Column[name=original_language_id,columnNumber=5,type=TINYINT,nullable=true,nativeType=TINYINT UNSIGNED,columnSize=3], "
            + "Column[name=rental_duration,columnNumber=6,type=TINYINT,nullable=false,nativeType=TINYINT UNSIGNED,columnSize=3], "
            + "Column[name=rental_rate,columnNumber=7,type=DECIMAL,nullable=false,nativeType=DECIMAL,columnSize=4], "
            + "Column[name=length,columnNumber=8,type=SMALLINT,nullable=true,nativeType=SMALLINT UNSIGNED,columnSize=5], "
            + "Column[name=replacement_cost,columnNumber=9,type=DECIMAL,nullable=false,nativeType=DECIMAL,columnSize=5], "
            + "Column[name=rating,columnNumber=10,type=CHAR,nullable=true,nativeType=ENUM,columnSize=5], "
            + "Column[name=special_features,columnNumber=11,type=CHAR,nullable=true,nativeType=SET,columnSize=54], "
            + "Column[name=last_update,columnNumber=12,type=TIMESTAMP,nullable=false,nativeType=TIMESTAMP,columnSize=19]]",
        Arrays.toString(filmTable.getColumns()));
    assertEquals(
        "[Relationship[primaryTable=language,primaryColumns=[language_id],foreignTable=film,foreignColumns=[language_id]], Relationship[primaryTable=language,primaryColumns=[language_id],foreignTable=film,foreignColumns=[original_language_id]], Relationship[primaryTable=film,primaryColumns=[film_id],foreignTable=film_actor,foreignColumns=[film_id]], Relationship[primaryTable=film,primaryColumns=[film_id],foreignTable=film_category,foreignColumns=[film_id]], Relationship[primaryTable=film,primaryColumns=[film_id],foreignTable=inventory,foreignColumns=[film_id]]]",
        Arrays.toString(filmTable.getRelationships()));

    dc = new JdbcDataContext(getConnection(), TableType.DEFAULT_TABLE_TYPES, "sakila");
    schemas = dc.getSchemas();
    assertEquals(6, schemas.length);
    assertEquals("[Table[name=actor,type=TABLE,remarks=], " + "Table[name=address,type=TABLE,remarks=], "
        + "Table[name=category,type=TABLE,remarks=], " + "Table[name=city,type=TABLE,remarks=], "
        + "Table[name=country,type=TABLE,remarks=], " + "Table[name=customer,type=TABLE,remarks=], "
        + "Table[name=film,type=TABLE,remarks=], " + "Table[name=film_actor,type=TABLE,remarks=], "
View Full Code Here

  public void testSplitQuery() throws Exception {
      if (!isConfigured()) {
            return;
        }
       
    DataContext dc = new JdbcDataContext(getConnection(), TableType.DEFAULT_TABLE_TYPES, "sakila");
    Schema schema = dc.getSchemaByName("sakila");
    Table staffListTable = schema.getTableByName("staff_list");
    assertNotNull(staffListTable);
    Table paymentTable = schema.getTableByName("payment");
    assertNotNull(paymentTable);
    Column countryColumn = staffListTable.getColumnByName("country");
View Full Code Here

TOP

Related Classes of org.apache.metamodel.DataContext

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.