Package com.redspr.redquerybuilder.core.client.expression

Examples of com.redspr.redquerybuilder.core.client.expression.ExpressionColumn


        sess.getValueRegistry().add("foo");
        Prepared prep = p.parseOnly("SELECT id FROM Person x1 WHERE (x1.sex = ?)");

        Select s = (Select) prep;
        assertTrue(s != null);
        ExpressionColumn ec = (ExpressionColumn) s.getExpressions().get(0);

        assertEquals("ID", ec.getSQL(new ArrayList()));

        assertEquals(1, s.getFilters().size());
        TableFilter tf = s.getFilters().get(0);
        assertTrue(tf != null);
        assertEquals("PERSON", tf.getTable().getName());
View Full Code Here


        Comparison c = new Comparison(s);
        cb.getSelect().addCondition(c);
        cb.fireDirty();

        ExpressionColumn left = (ExpressionColumn) c.getLeft();

        TableFilter log = cb.getSelect().getFilters().get(0);
        assertEquals("Log", log.getTable().getName());
        assertEquals("x0", log.getAlias());
        for (int i = 0; i < 2; i++) {
            left.selectConstraintRef((ConstraintReferential) log.getTable()
                    .getConstraints().get(0));
            left.updateColumn("x1", s.getDatabase().getMainSchema().findTableOrView(
                    "PERSON").getColumn("sex"));

            {
                JoinHelper thing = JoinHelper.getParent(cb.getSelect()
                        .getTableFilter("x1"));
View Full Code Here

        Comparison c = new Comparison(s);

        cb.getSelect().addCondition(c);
        cb.fireDirty();

        ExpressionColumn left = (ExpressionColumn) c.getLeft();

        TableFilter log = cb.getSelect().getFilters().get(0);
        left.selectConstraintRef((ConstraintReferential) log.getTable()
                .getConstraints().get(0));

        cb.fireDirty();
        left.updateColumn("x1", s.getDatabase().getMainSchema().findTableOrView(
                "PERSON").getColumn("sex"));

        cb.fireDirty();



        assertEquals(
                "SELECT \nFROM Log x0\nINNER JOIN PERSON x1 ON x0.parent = x1.id\nWHERE (x1.sex = ?)",
                cb.getSelect().getSQL(new ArrayList()));

        // change back to simple column
        left.updateColumn("x0", log.getTable().getColumn("date"));
        cb.fireDirty();
    }
View Full Code Here

        Comparison c = new Comparison(s);

        cb.getSelect().addCondition(c);
        cb.fireDirty();

        ExpressionColumn left = (ExpressionColumn) c.getLeft();

        left.selectConstraintRef(logToPerson);
        cb.fireDirty();

        assertEquals(
                "SELECT \nFROM Log x0\nINNER JOIN PERSON x1 ON x0.parent = x1.id\nWHERE (x1.id = ?)",
                cb.getSelect().getSQL(new ArrayList()));

        left.selectConstraintRef(personToLog);

      //  ValueChangeEvent.fire(left, left.getColumn());
cb.getSelect().onDirty()// TODO 20 need this to make unit test work, async issue?
        cb.fireDirty(); // XXX bad encapsulation, causes garbage collection
View Full Code Here

        s.getMsgBus().addHandler(TableEvent.TYPE, new TableEventHandler() {
            @Override
            public void onTable(TableEvent e) {
                ObjectArray expr = ObjectArray.newInstance();
                String alias = s.getFilters().get(0).getAlias();
                expr.add(new ExpressionColumn(s, null, alias, "id"));
                cb.getSelect().setExpressions(expr);
            }
        });

        Table person = s.getDatabase().getMainSchema().findTableOrView("PERSON");
View Full Code Here

            assertEquals("SELECT X.ID\nFROM PERSON X\nWHERE (X.CATEGORY IN (?, ?))", s.getSQL(args()));


            // change to sex
            ExpressionColumn left2 = (ExpressionColumn) comp.getLeft();
            left2.updateColumn("X", sess.getDatabase().getMainSchema()
                    .findTableOrView("PERSON").getColumn("category2"));
            cb.fireDirty();
        }

        {
            Comparison comp = (Comparison) s.getCondition();
            Parameter right = (Parameter) comp.getRight();
            Element selectElmt = right.getElement();

            String html = "<select class='gwt-ListBox' multiple='multiple' size='2'>"
                    + "<option value='X'>X</option>"
                    + "<option value='Y'>Y</option>"
                    + "<option value='Z'>Z</option>" + "</select>";
            assertEquals(html, selectElmt);

            assertEquals("SELECT X.ID\nFROM PERSON X\nWHERE (X.category2 IN ?)", s.getSQL(args()));

            // change to sex
            ExpressionColumn left2 = (ExpressionColumn) comp.getLeft();
            left2.updateColumn("X", sess.getDatabase().getMainSchema()
                    .findTableOrView("PERSON").getColumn("sex"));
            cb.fireDirty();
        }

        {
View Full Code Here

        {
            Comparison comp = (Comparison) s.getCondition();

            // change to sex
            ExpressionColumn left2 = (ExpressionColumn) comp.getLeft();
            left2.updateColumn("X", sess.getDatabase().getMainSchema()
                    .findTableOrView("LOG").getColumn("date"));


            final List<Object> args = new ArrayList<Object>();
            cb.addValueChangeHandler(new ValueChangeHandler<Select>() {
                @Override
                public void onValueChange(ValueChangeEvent<Select> event) {
                    event.getValue().getSQL(args);
                }
            });

            left2.fireDirty();

            assertEquals(1, args.size());
            assertEquals(null, args.get(0));
        }
    }
View Full Code Here

        RootPanel.get().add(cb);
        Select s = cb.getSelect();

        Comparison c = s.addFirstCondition();
        s.fireDirty();
        ExpressionColumn left2 = (ExpressionColumn) c.getLeft();
        left2.updateColumn("X", sess.getDatabase().getMainSchema()
                .findTableOrView("PERSON").getColumn("owner"));
        c.fireDirty();


        assertEquals("<select class='gwt-ListBox'>"
View Full Code Here

                            // XXX need to do distinct?
                            expr = ObjectArray.newInstance();
                            TableFilter tf = session.getFilters().get(0);
                            String alias = tf.getAlias();
                            for (Column col : tf.getTable().getColumns()) {
                                expr.add(new ExpressionColumn(session, null, alias,
                                    col.getName()));
                            }
                        } else {
                            expr = null;
                        }
View Full Code Here

TOP

Related Classes of com.redspr.redquerybuilder.core.client.expression.ExpressionColumn

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.