Package org.apache.metamodel.schema

Examples of org.apache.metamodel.schema.Schema


        assertEquals("foobar", row.getValue(item));
        assertEquals(item, row.getSelectItems()[0]);
    }

    public void testGetSubSelection() throws Exception {
        Schema schema = getExampleSchema();
        Table projectTable = schema.getTableByName(TABLE_PROJECT);
        SelectItem item1 = new SelectItem(projectTable.getColumns()[0]);
        SelectItem item2 = new SelectItem(projectTable.getColumns()[0]);
        SelectItem[] items = { item1, item2 };
        DataSetHeader header = new CachingDataSetHeader(items);
        Object[] values = { "foo", "bar" };
View Full Code Here


        assertSame(column1, columns[0]);
        assertSame(column3, columns[1]);
    }

    public void testGetTableFromItems() throws Exception {
        Schema schema = getExampleSchema();
        Table contributorTable = schema.getTableByName(TABLE_CONTRIBUTOR);
        Table projectTable = schema.getTableByName(TABLE_PROJECT);
        Table projectContributorTable = schema.getTableByName(TABLE_PROJECT_CONTRIBUTOR);

        FromItem sqFromItem = new FromItem(new Query().from(projectTable).from(projectContributorTable));
        FromItem fromItem = new FromItem(JoinType.INNER, new FromItem(contributorTable), sqFromItem, new SelectItem[0],
                new SelectItem[0]);
        Query q = new Query().from(fromItem);
View Full Code Here

    public void testIndexInfo() throws Exception {
        if (!isConfigured()) {
            return;
        }

        Schema schema = new JdbcDataContext(getConnection(), new TableType[] { TableType.TABLE }, null)
                .getSchemaByName("SYS");
        assertEquals(12, schema.getTableCount());
    }
View Full Code Here

        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 testGetSchema() throws Exception {
        if (!isConfigured()) {
            return;
        }
        Schema schema = getDataContext().getSchemaByName("HR");
        assertNotNull(schema);
        assertEquals("{JdbcTable[name=COUNTRIES,type=TABLE,remarks=<null>],"
                + "JdbcTable[name=DEPARTMENTS,type=TABLE,remarks=<null>]"
                + ",JdbcTable[name=EMPLOYEES,type=TABLE,remarks=<null>]"
                + ",JdbcTable[name=JOBS,type=TABLE,remarks=<null>]"
                + ",JdbcTable[name=JOB_HISTORY,type=TABLE,remarks=<null>]"
                + ",JdbcTable[name=LOCATIONS,type=TABLE,remarks=<null>]"
                + ",JdbcTable[name=REGIONS,type=TABLE,remarks=<null>]"
                + ",JdbcTable[name=EMP_DETAILS_VIEW,type=VIEW,remarks=<null>]}", Arrays.toString(schema.getTables()));

        Relationship[] employeeRelationships = schema.getTableByName("EMPLOYEES").getRelationships();
        assertEquals(
                "{Relationship[primaryTable=EMPLOYEES,primaryColumns={EMPLOYEE_ID},foreignTable=DEPARTMENTS,foreignColumns={MANAGER_ID}],"
                        + "Relationship[primaryTable=DEPARTMENTS,primaryColumns={DEPARTMENT_ID},foreignTable=EMPLOYEES,foreignColumns={DEPARTMENT_ID}],"
                        + "Relationship[primaryTable=EMPLOYEES,primaryColumns={EMPLOYEE_ID},foreignTable=EMPLOYEES,foreignColumns={MANAGER_ID}],"
                        + "Relationship[primaryTable=JOBS,primaryColumns={JOB_ID},foreignTable=EMPLOYEES,foreignColumns={JOB_ID}],"
                        + "Relationship[primaryTable=EMPLOYEES,primaryColumns={EMPLOYEE_ID},foreignTable=JOB_HISTORY,foreignColumns={EMPLOYEE_ID}]}",
                Arrays.toString(employeeRelationships));

        assertEquals(
                "{JdbcColumn[name=EMPLOYEE_ID,columnNumber=0,type=DECIMAL,nullable=false,nativeType=NUMBER,columnSize=6],"
                        + "JdbcColumn[name=FIRST_NAME,columnNumber=1,type=VARCHAR,nullable=true,nativeType=VARCHAR2,columnSize=20],"
                        + "JdbcColumn[name=LAST_NAME,columnNumber=2,type=VARCHAR,nullable=false,nativeType=VARCHAR2,columnSize=25],"
                        + "JdbcColumn[name=EMAIL,columnNumber=3,type=VARCHAR,nullable=false,nativeType=VARCHAR2,columnSize=25],"
                        + "JdbcColumn[name=PHONE_NUMBER,columnNumber=4,type=VARCHAR,nullable=true,nativeType=VARCHAR2,columnSize=20],"
                        + "JdbcColumn[name=HIRE_DATE,columnNumber=5,type=DATE,nullable=false,nativeType=DATE,columnSize=7],"
                        + "JdbcColumn[name=JOB_ID,columnNumber=6,type=VARCHAR,nullable=false,nativeType=VARCHAR2,columnSize=10],"
                        + "JdbcColumn[name=SALARY,columnNumber=7,type=DECIMAL,nullable=true,nativeType=NUMBER,columnSize=8],"
                        + "JdbcColumn[name=COMMISSION_PCT,columnNumber=8,type=DECIMAL,nullable=true,nativeType=NUMBER,columnSize=2],"
                        + "JdbcColumn[name=MANAGER_ID,columnNumber=9,type=DECIMAL,nullable=true,nativeType=NUMBER,columnSize=6],"
                        + "JdbcColumn[name=DEPARTMENT_ID,columnNumber=10,type=DECIMAL,nullable=true,nativeType=NUMBER,columnSize=4]}",
                Arrays.toString(schema.getTableByName("EMPLOYEES").getColumns()));

        assertEquals(
                "{JdbcColumn[name=DEPARTMENT_ID,columnNumber=0,type=DECIMAL,nullable=false,nativeType=NUMBER,columnSize=4],"
                        + "JdbcColumn[name=DEPARTMENT_NAME,columnNumber=1,type=VARCHAR,nullable=false,nativeType=VARCHAR2,columnSize=30],"
                        + "JdbcColumn[name=MANAGER_ID,columnNumber=2,type=DECIMAL,nullable=true,nativeType=NUMBER,columnSize=6],"
                        + "JdbcColumn[name=LOCATION_ID,columnNumber=3,type=DECIMAL,nullable=true,nativeType=NUMBER,columnSize=4]}",
                Arrays.toString(schema.getTableByName("DEPARTMENTS").getColumns()));
    }
View Full Code Here

    public void testExecuteQuery() throws Exception {
        if (!isConfigured()) {
            return;
        }
        Schema schema = getDataContext().getSchemaByName("HR");
        Table employeeTable = schema.getTableByName("EMPLOYEES");
        Table departmentsTable = schema.getTableByName("DEPARTMENTS");
        Relationship relationship = employeeTable.getRelationships(departmentsTable)[0];
        assertEquals(
                "Relationship[primaryTable=EMPLOYEES,primaryColumns={EMPLOYEE_ID},foreignTable=DEPARTMENTS,foreignColumns={MANAGER_ID}]",
                relationship.toString());
View Full Code Here

    public void testGetSchemas() throws Exception {
        DataContext dc = new JdbcDataContext(_connection);
        String[] schemaNames = dc.getSchemaNames();
        assertEquals("[null]", Arrays.toString(schemaNames));

        Schema schema = dc.getDefaultSchema();
        assertNotNull(schema);
        assertNull(schema.getName());

        Table[] tables = schema.getTables();
        assertEquals("[Table[name=system,type=TABLE,remarks=null], "
                + "Table[name=permission,type=TABLE,remarks=null], "
                + "Table[name=auth_cookie,type=TABLE,remarks=null], " + "Table[name=session,type=TABLE,remarks=null], "
                + "Table[name=session_attribute,type=TABLE,remarks=null], "
                + "Table[name=attachment,type=TABLE,remarks=null], " + "Table[name=wiki,type=TABLE,remarks=null], "
                + "Table[name=revision,type=TABLE,remarks=null], "
                + "Table[name=node_change,type=TABLE,remarks=null], " + "Table[name=ticket,type=TABLE,remarks=null], "
                + "Table[name=ticket_change,type=TABLE,remarks=null], "
                + "Table[name=ticket_custom,type=TABLE,remarks=null], " + "Table[name=enum,type=TABLE,remarks=null], "
                + "Table[name=component,type=TABLE,remarks=null], " + "Table[name=milestone,type=TABLE,remarks=null], "
                + "Table[name=version,type=TABLE,remarks=null], " + "Table[name=report,type=TABLE,remarks=null]]",
                Arrays.toString(tables));

        // Index- and key-info is not yet implemented in the JDBC driver

        assertEquals("[]", Arrays.toString(schema.getRelationships()));

        Table wikiTable = schema.getTableByName("WIKI");
        assertEquals(
                "[Column[name=name,columnNumber=0,type=VARCHAR,nullable=true,nativeType=TEXT,columnSize=2000000000], "
                        + "Column[name=version,columnNumber=1,type=INTEGER,nullable=true,nativeType=INTEGER,columnSize=2000000000], "
                        + "Column[name=time,columnNumber=2,type=INTEGER,nullable=true,nativeType=INTEGER,columnSize=2000000000], "
                        + "Column[name=author,columnNumber=3,type=VARCHAR,nullable=true,nativeType=TEXT,columnSize=2000000000], "
                        + "Column[name=ipnr,columnNumber=4,type=VARCHAR,nullable=true,nativeType=TEXT,columnSize=2000000000], "
                        + "Column[name=text,columnNumber=5,type=VARCHAR,nullable=true,nativeType=TEXT,columnSize=2000000000], "
                        + "Column[name=comment,columnNumber=6,type=VARCHAR,nullable=true,nativeType=TEXT,columnSize=2000000000], "
                        + "Column[name=readonly,columnNumber=7,type=INTEGER,nullable=true,nativeType=INTEGER,columnSize=2000000000]]",
                Arrays.toString(wikiTable.getColumns()));

        Table permissionTable = schema.getTableByName("PERMISSION");
        assertEquals(
                "[Column[name=username,columnNumber=0,type=VARCHAR,nullable=true,nativeType=TEXT,columnSize=2000000000], "
                        + "Column[name=action,columnNumber=1,type=VARCHAR,nullable=true,nativeType=TEXT,columnSize=2000000000]]",
                Arrays.toString(permissionTable.getColumns()));
    }
View Full Code Here

        if (!isConfigured()) {
            return;
        }

        JdbcDataContext dc = createLimitAndOffsetTestData();
        Schema schema = dc.getDefaultSchema();
        Table productsTable = schema.getTableByName("test_table");

        DataSet ds = dc.query().from(productsTable).select("foo").limit(2).execute();
        assertTrue(ds.next());
        assertEquals("Row[values=[1]]", ds.getRow().toString());
        assertTrue(ds.next());
View Full Code Here

                Arrays.toString(permissionTable.getColumns()));
    }

    public void testExecuteQuery() throws Exception {
        JdbcDataContext dc = new JdbcDataContext(_connection);
        Schema schema = dc.getDefaultSchema();
        assertEquals("Schema[name=null]", schema.toString());

        Table wikiTable = schema.getTableByName("WIKI");

        Query q = new Query().selectCount().from(wikiTable)
                .where(wikiTable.getColumnByName("name"), OperatorType.LIKE, "Trac%");
        assertEquals("SELECT COUNT(*) FROM wiki WHERE wiki.name LIKE 'Trac%'", q.toString());
        assertEquals(1, dc.getFetchSizeCalculator().getFetchSize(q));
        assertEquals(37, dc.executeQuery(q).toObjectArrays().get(0)[0]);

        Table permissionTable = schema.getTableByName("PERMISSION");
        Column typeColumn = permissionTable.getColumnByName("username");
        q = new Query().select(typeColumn).selectCount().from(permissionTable).groupBy(typeColumn).orderBy(typeColumn);
        assertEquals(
                "SELECT permission.username, COUNT(*) FROM permission GROUP BY permission.username ORDER BY permission.username ASC",
                q.toString());
View Full Code Here

        if (!isConfigured()) {
            return;
        }

        JdbcDataContext dc = createLimitAndOffsetTestData();
        Schema schema = dc.getDefaultSchema();
        Table productsTable = schema.getTableByName("test_table");

        DataSet ds = dc.query().from(productsTable).select("foo").offset(1).execute();
        assertTrue(ds.next());
        assertEquals("Row[values=[2]]", ds.getRow().toString());
        assertTrue(ds.next());
View Full Code Here

TOP

Related Classes of org.apache.metamodel.schema.Schema

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.