Package com.avaje.ebean.RawSql

Examples of com.avaje.ebean.RawSql.ColumnMapping


  }

  private SqlTree createRawSqlSqlTree(OrmQueryRequest<?> request, CQueryPredicates predicates) {

    BeanDescriptor<?> descriptor = request.getBeanDescriptor();
    ColumnMapping columnMapping = request.getQuery().getRawSql().getColumnMapping();

    PathProperties pathProps = new PathProperties();

    // convert list of columns into (tree like) PathProperties
    Iterator<Column> it = columnMapping.getColumns();
    while (it.hasNext()) {
      RawSql.ColumnMapping.Column column = it.next();
      String propertyName = column.getPropertyName();
      if (!RawSqlBuilder.IGNORE_COLUMN.equals(propertyName)) {
View Full Code Here


public class TestRawSqlColumnParsing extends TestCase {

    public void test_simple() {
       
        ColumnMapping columnMapping = DRawSqlColumnsParser.parse("a,b,c");
        Map<String, Column> mapping = columnMapping.mapping();
        Column c = mapping.get("a");
       
        assertEquals("a",c.getDbColumn());
        assertEquals(0, c.getIndexPos());
        assertEquals("a",c.getPropertyName());
View Full Code Here

    }

   public void test_simpleWithSpacing() {
       
        ColumnMapping columnMapping = DRawSqlColumnsParser.parse(" a  ,  b    ,  c   ");
        Map<String, Column> mapping = columnMapping.mapping();
        Column c = mapping.get("a");
       
        assertEquals("a",c.getDbColumn());
        assertEquals(0, c.getIndexPos());
        assertEquals("a", c.getPropertyName());
View Full Code Here

    }
  
    public void test_withAlias() {
       
        ColumnMapping columnMapping = DRawSqlColumnsParser.parse("a a0,b    b1, c  c2 ,   d    d3  , e  e4 ");
        Map<String, Column> mapping = columnMapping.mapping();
       
        assertEquals(5, mapping.size());
       
        Column c = mapping.get("a");
       
View Full Code Here

    }

   
    public void test_withAsAlias() {
       
        ColumnMapping columnMapping = DRawSqlColumnsParser.parse("a as a0,'b'    b1, \"c(blah)\" as c2 ,   d as   d3  , e     as e4 ");
        Map<String, Column> mapping = columnMapping.mapping();
       
        assertEquals(5, mapping.size());
       
        Column c = mapping.get("a");
       
View Full Code Here

  }

  private int[] createIndexPositions(OrmQueryRequest<?> request, SqlTree sqlTree) {

    List<String> chain = sqlTree.buildSelectExpressionChain();
    ColumnMapping columnMapping = request.getQuery().getRawSql().getColumnMapping();

    InheritInfo inheritInfo = request.getBeanDescriptor().getInheritInfo();
    boolean addDiscriminator = inheritInfo != null;
    int offset = addDiscriminator ? 1 : 0;

    int[] indexPositions = new int[chain.size() + offset];
    if (addDiscriminator) {
      // discriminator column must always be first in the query
      indexPositions[0] = 1;
    }
    for (int i = 0; i < chain.size(); i++) {
      String expr = chain.get(i);
      int indexPos = 1 + columnMapping.getIndexPosition(expr);
      indexPositions[i + offset] = indexPos;
    }

    return indexPositions;
  }
View Full Code Here

   * this query.
   */
  public static RawSqlBuilder unparsed(String sql) {

    Sql s = new Sql(sql);
    return new RawSqlBuilder(s, new ColumnMapping());
  }
View Full Code Here

  public static RawSqlBuilder parse(String sql) {

    Sql sql2 = DRawSqlParser.parse(sql);
    String select = sql2.getPreFrom();

    ColumnMapping mapping = DRawSqlColumnsParser.parse(select);
    return new RawSqlBuilder(sql2, mapping);
  }
View Full Code Here

    while (pos <= end) {
      ColumnMapping.Column c = nextColumnInfo();
      columns.add(c);
    }

    return new ColumnMapping(columns);
  }
View Full Code Here

   * this query.
   */
  public static RawSqlBuilder unparsed(String sql) {

    Sql s = new Sql(sql);
    return new RawSqlBuilder(s, new ColumnMapping());
  }
View Full Code Here

TOP

Related Classes of com.avaje.ebean.RawSql.ColumnMapping

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.