Package org.apache.metamodel.schema

Examples of org.apache.metamodel.schema.Column


            }
        });

        try {
            dc.refreshSchemas();
            final Column column = dc.getColumnByQualifiedLabel("my_table.some_bytes");
            assertEquals("Column[name=some_bytes,columnNumber=1,type=BINARY,nullable=true,"
                    + "nativeType=bytea,columnSize=2147483647]", column.toString());

            final Table table = column.getTable();

            dc.executeUpdate(new UpdateScript() {
                @Override
                public void run(UpdateCallback callback) {
                    callback.insertInto(table).value(column, new byte[] { 1, 2, 3 }).execute();
View Full Code Here


        Query q = new Query();
        Schema schema = dc.getSchemaByName("public");
        Table productsTable = schema.getTableByName("products");
        q.from(productsTable);

        Column titleColumn = productsTable.getColumnByName("title");
        Column productPriceColumn = productsTable.getColumnByName("price");
        q.select(titleColumn, productPriceColumn);
        q.getSelectClause().getItem(0).setAlias("product-title");

        DataSet data = dc.executeQuery(q);
        TableModel tableModel = new DataSetTableModel(data);
        assertEquals(2, tableModel.getColumnCount());
        assertEquals(10000, tableModel.getRowCount());

        assertEquals("ACADEMY ACADEMY", tableModel.getValueAt(0, 0).toString());
        assertEquals("25.99", tableModel.getValueAt(0, 1).toString());

        assertEquals("ACADEMY HORN", tableModel.getValueAt(432, 0).toString());
        assertEquals("16.99", tableModel.getValueAt(6346, 1).toString());

        assertEquals("ALADDIN ZORRO", tableModel.getValueAt(9999, 0).toString());
        assertEquals("10.99", tableModel.getValueAt(9999, 1).toString());

        data = null;
        tableModel = null;

        Column prodIdColumn = productsTable.getColumnByName("prod_id");
        Table orderlinesTable = schema.getTableByName("orderlines");
        Column commonProdIdColumn = orderlinesTable.getColumnByName("prod_id");
        Column quantityColumn = orderlinesTable.getColumnByName("quantity");

        q.from(orderlinesTable);
        q.where(new FilterItem(new SelectItem(prodIdColumn), OperatorType.EQUALS_TO, new SelectItem(commonProdIdColumn)));
        q.groupBy(titleColumn);
        q.getSelectClause().removeItem(q.getSelectClause().getSelectItem(productPriceColumn));
View Full Code Here

        Schema schema = dc.getSchemaByName("public");
        Table productsTable = schema.getTableByName("products");
        Table customerTable = schema.getTableByName("customers");
        q.from(productsTable, "p").from(customerTable, "c");

        Column titleColumn = productsTable.getColumnByName("title");
        Column priceColumn = productsTable.getColumnByName("price");
        Column cityColumn = customerTable.getColumnByName("city");
        Column ageColumn = customerTable.getColumnByName("age");
        q.select(titleColumn, priceColumn, cityColumn);

        q.where(new FilterItem(new SelectItem(priceColumn), OperatorType.GREATER_THAN, 27));
        q.where(new FilterItem(new SelectItem(ageColumn), OperatorType.GREATER_THAN, 55));
View Full Code Here

        return this;
    }

    @Override
    public WhereBuilder<GroupedQueryBuilder> or(String columnName) {
        Column column = findColumn(columnName);
        return or(column);
    }
View Full Code Here

        return new WhereBuilderImpl(column, _query, _parentOrFilter, _orFilters, getQueryBuilder());
    }

    @Override
    public WhereBuilder<GroupedQueryBuilder> and(String columnName) {
        Column column = findColumn(columnName);
        return and(column);
    }
View Full Code Here

public class JdbcColumnTest extends JdbcTestCase {

  public void testEqualsDisconected() throws Exception {
    Connection con1 = getTestDbConnection();
    DataContext dc = new JdbcDataContext(con1);
    Column col1 = dc.getDefaultSchema().getTableByName("EMPLOYEES").getColumnByName("EMPLOYEENUMBER");
    con1.close();

    Connection con2 = getTestDbConnection();
    assertTrue(con1 != con2);
    dc = new JdbcDataContext(con2);
    Column col2 = dc.getDefaultSchema().getTableByName("EMPLOYEES").getColumnByName("EMPLOYEENUMBER");

    assertEquals(col1, col2);
    assertTrue(new SelectItem(col1).equals(new SelectItem(col2)));
    assertTrue(new SelectItem(col1).setAlias("foo").equalsIgnoreAlias(new SelectItem(col2).setAlias("bar")));

    con2.close();

    assertEquals(col1, col2);
    assertTrue(new SelectItem(col1).equals(new SelectItem(col2)));
    assertTrue(new SelectItem(col1).setAlias("foo").equalsIgnoreAlias(new SelectItem(col2).setAlias("bar")));

    try {
      col2.isIndexed();
      fail("Exception expected");
    } catch (MetaModelException e) {
      assertEquals("Could not load indexes: Connection is closed", e.getMessage());
    }
  }
View Full Code Here

        Object[] values = getValues();
        Column[] columns = getColumns();
        Map<String, Object> map = new HashMap<String, Object>();
        for (int i = 0; i < columns.length; i++) {
            Column column = columns[i];
            if (isSet(column)) {
                map.put(column.getName(), values[i]);
            }
        }

        CouchDbConnector connector = getUpdateCallback().getConnector(name);
        connector.addToBulkBuffer(map);
View Full Code Here

    // create a map which will act as a prototype for updated objects
    final Map<String, Object> prototype = new HashMap<String, Object>();
    final Column[] columns = getColumns();
    final Object[] values = getValues();
    for (int i = 0; i < columns.length; i++) {
      final Column column = columns[i];
      if (isSet(column)) {
        final String columnName = column.getName();
        final Object value = values[i];
        prototype.put(columnName, value);
      }
    }

    final CouchDbDataContext dc = _updateCallback.getDataContext();
    final DataSet dataSet = dc.query().from(table).select(table.getColumns()).where(getWhereItems()).execute();
    try {
      while (dataSet.next()) {
        final Map<String, Object> map = new HashMap<String, Object>(prototype);
        final Row row = dataSet.getRow();
        for (Column column : table.getColumns()) {
          if (!map.containsKey(column.getName())) {
            map.put(column.getName(), row.getValue(column));
          }
        }

        // copy the prototype and set the not-updated values
        connector.update(map);
View Full Code Here

    }

    public void testQualifiedLabel() throws Exception {
        DataContext dc = new JdbcDataContext(_connection);

        Column column = dc.getDefaultSchema().getTableByName("PRODUCTS").getColumnByName("PRODUCTCODE");
        assertEquals("PUBLIC.PRODUCTS.PRODUCTCODE", column.getQualifiedLabel());
        assertEquals("Table[name=PRODUCTS,type=TABLE,remarks=null]", dc.getTableByQualifiedLabel("PUBLIC.PRODUCTS").toString());
        assertEquals("Table[name=PRODUCTS,type=TABLE,remarks=null]", dc.getTableByQualifiedLabel("PRODUCTS").toString());
        assertEquals("Column[name=PRODUCTCODE,columnNumber=0,type=VARCHAR,nullable=false,nativeType=VARCHAR,columnSize=50]", dc
                .getColumnByQualifiedLabel("PUBLIC.PRODUCTS.PRODUCTCODE").toString());
        assertEquals("Column[name=PRODUCTCODE,columnNumber=0,type=VARCHAR,nullable=false,nativeType=VARCHAR,columnSize=50]", dc
View Full Code Here

                        + "Column[name=OFFICECODE,columnNumber=5,type=VARCHAR,nullable=false,nativeType=VARCHAR,columnSize=20], "
                        + "Column[name=REPORTSTO,columnNumber=6,type=INTEGER,nullable=true,nativeType=INTEGER,columnSize=0], "
                        + "Column[name=JOBTITLE,columnNumber=7,type=VARCHAR,nullable=false,nativeType=VARCHAR,columnSize=50]]",
                Arrays.toString(employeeTable.getColumns()));

        Column employeeNumberColumn1 = customersTable.getColumnByName("SALESREPEMPLOYEENUMBER");
        Column countryColumn = customersTable.getColumnByName("COUNTRY");
        Column employeeNumberColumn2 = employeeTable.getColumnByName("EMPLOYEENUMBER");
        Column creditLimitColumn = customersTable.getColumnByName("CREDITLIMIT");

        Query q = new Query();
        q.from(customersTable, "c");
        q.from(employeeTable, "o");
        SelectItem countrySelect = new SelectItem(countryColumn);
View Full Code Here

TOP

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

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.