public void acceptVisit(ExpressionVisitor visitor) { visitor.enter(this); _val1.acceptVisit(visitor); _val2.acceptVisit(visitor); visitor.exit(this); }
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer buf) { _val.calculateValue(sel, ctx, state, null, null); _val.appendIsEmpty(sel, ctx, state, buf); sel.append(buf, state.joins); }
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer buf) { _val.calculateValue(sel, ctx, state, null, null); _val.appendIsNotEmpty(sel, ctx, state, buf); sel.append(buf, state.joins); }
ExpState state = (val1Null) ? bstate.state2 : bstate.state1; if (!isDirectComparison()) { int len = val.length(sel, ctx, state); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" AND "); val.appendTo(sel, ctx, state, buf, i); buf.append(" IS NOT ").appendValue(null); val.appendIsNotNull(sel, ctx, state, buf); } else { Val val1 = getValue1(); Val val2 = getValue2(); if (val1.length(sel, ctx, bstate.state1) == 1 && val2.length(sel, ctx, bstate.state2) == 1) { ctx.store.getDBDictionary().comparison(buf, "<>", new FilterValueImpl(sel, ctx, bstate.state1, val1), new FilterValueImpl(sel, ctx, bstate.state2, val2)); } else { int len = java.lang.Math.max(val1.length(sel, ctx, bstate.state1), val2.length(sel, ctx, bstate.state2)); buf.append("("); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" OR "); val1.appendTo(sel, ctx, bstate.state1, buf, i); buf.append(" <> "); val2.appendTo(sel, ctx, bstate.state2, buf, i);
ExpState state = (val1Null) ? bstate.state2 : bstate.state1; if (!isDirectComparison()) { int len = val.length(sel, ctx, state); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" AND "); val.appendTo(sel, ctx, state, buf, i); buf.append(" IS ").appendValue(null); val.appendIsNull(sel, ctx, state, buf); } else { Val val1 = getValue1(); Val val2 = getValue2(); if (val1.length(sel, ctx, bstate.state1) == 1 && val2.length(sel, ctx, bstate.state2) == 1) { ctx.store.getDBDictionary().comparison(buf, "=", new FilterValueImpl(sel, ctx, bstate.state1, val1), new FilterValueImpl(sel, ctx, bstate.state2, val2)); } else { int len = java.lang.Math.min(val1.length(sel, ctx, bstate.state1), val2.length(sel, ctx, bstate.state2)); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" AND "); val1.appendTo(sel, ctx, bstate.state1, buf, i); buf.append(" = "); val2.appendTo(sel, ctx, bstate.state2, buf, i);
ExpState state = (val1Null) ? bstate.state2 : bstate.state1; if (!isDirectComparison()) { int len = val.length(sel, ctx, state); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" AND "); val.appendTo(sel, ctx, state, buf, i); buf.append(" IS ").appendValue(null); val.appendIsNull(sel, ctx, state, buf); } else { Val val1 = getValue1(); Val val2 = getValue2(); if (val1.length(sel, ctx, bstate.state1) == 1 && val2.length(sel, ctx, bstate.state2) == 1) { ctx.store.getDBDictionary().comparison(buf, "=", new FilterValueImpl(sel, ctx, bstate.state1, val1), new FilterValueImpl(sel, ctx, bstate.state2, val2)); } else { int lenVal1 = val1.length(sel, ctx, bstate.state1); int lenVal2 = val2.length(sel, ctx, bstate.state2); int len = java.lang.Math.min(lenVal1, lenVal2); ClassMapping cm = (ClassMapping) val1.getMetaData(); FieldMapping[] fmsPK = cm.getPrimaryKeyFieldMappings(); val1.appendTo(sel, ctx, bstate.state1, buf, i); buf.append(" = "); val2.appendTo(sel, ctx, bstate.state2, buf, i);
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql, int index) { getValue().calculateValue(sel, ctx, state, null, null); getValue().appendSize(sel, ctx, state, sql); sel.append(sql, state.joins); }
public Class getType() { if (_cast != null) return _cast; return _map.getType(); }
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql, int index) { KeyExpState estate = (KeyExpState) state; _key.appendTo(sel, ctx, estate.key, sql, index); }
public void groupBy(Select sel, ExpContext ctx, ExpState state) { KeyExpState estate = (KeyExpState) state; _key.groupBy(sel, ctx, estate.key); }
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer buf) { InSubQExpState istate = (InSubQExpState) state; _sub.calculateValue(sel, ctx, istate.subqState, null, null); _val.calculateValue(sel, ctx, istate.valueState, null, null); _val.appendTo(sel, ctx, istate.valueState, buf, 0); buf.append(" IN "); _sub.appendTo(sel, ctx, istate.valueState, buf, 0); }
public void calculateValue(Select sel, ExpContext ctx, ExpState state, Val other, ExpState otherState) { _val.calculateValue(sel, ctx, state, other, otherState); _key.calculateValue(sel, ctx, state, other, otherState); }
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql, int index) { getValue().calculateValue(sel, ctx, state, null, null); getValue().appendIndex(sel, ctx, state, sql); sel.append(sql, state.joins); }
ExpState state = (val1Null) ? bstate.state2 : bstate.state1; if (!isDirectComparison()) { int len = val.length(sel, ctx, state); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" AND "); val.appendTo(sel, ctx, state, buf, i); buf.append(" IS NOT ").appendValue(null); val.appendIsNotNull(sel, ctx, state, buf); } else { Val val1 = getValue1(); Val val2 = getValue2(); if (val1.length(sel, ctx, bstate.state1) == 1 && val2.length(sel, ctx, bstate.state2) == 1) { ctx.store.getDBDictionary().comparison(buf, "<>", new FilterValueImpl(sel, ctx, bstate.state1, val1), new FilterValueImpl(sel, ctx, bstate.state2, val2)); } else { int len = java.lang.Math.max(val1.length(sel, ctx, bstate.state1), val2.length(sel, ctx, bstate.state2)); buf.append("("); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" OR "); val1.appendTo(sel, ctx, bstate.state1, buf, i); buf.append(" <> "); val2.appendTo(sel, ctx, bstate.state2, buf, i);
ExpState state = (val1Null) ? bstate.state2 : bstate.state1; if (!isDirectComparison()) { int len = val.length(sel, ctx, state); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" AND "); val.appendTo(sel, ctx, state, buf, i); buf.append(" IS ").appendValue(null); val.appendIsNull(sel, ctx, state, buf); } else { Val val1 = getValue1(); Val val2 = getValue2(); if (val1.length(sel, ctx, bstate.state1) == 1 && val2.length(sel, ctx, bstate.state2) == 1) { ctx.store.getDBDictionary().comparison(buf, "=", new FilterValueImpl(sel, ctx, bstate.state1, val1), new FilterValueImpl(sel, ctx, bstate.state2, val2)); } else { int len = java.lang.Math.max(val1.length(sel, ctx, bstate.state1), val2.length(sel, ctx, bstate.state2)); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" AND "); val1.appendTo(sel, ctx, bstate.state1, buf, i); buf.append(" = "); val2.appendTo(sel, ctx, bstate.state2, buf, i);
ExpState state = (val1Null) ? bstate.state2 : bstate.state1; if (!isDirectComparison()) { int len = val.length(sel, ctx, state); for (int i = 0; i < len; i++) { if (i > 0) buf.append(" AND "); val.appendTo(sel, ctx, state, buf, i); buf.append(" IS ").appendValue(null); val.appendIsNull(sel, ctx, state, buf); } else { Val val1 = getValue1(); Val val2 = getValue2(); if (val1.length(sel, ctx, bstate.state1) == 1 && val2.length(sel, ctx, bstate.state2) == 1) { ctx.store.getDBDictionary().comparison(buf, "=", new FilterValueImpl(sel, ctx, bstate.state1, val1), new FilterValueImpl(sel, ctx, bstate.state2, val2)); } else { int lenVal1 = val1.length(sel, ctx, bstate.state1); int lenVal2 = val2.length(sel, ctx, bstate.state2); int len = java.lang.Math.min(lenVal1, lenVal2); ClassMapping cm = (ClassMapping) val1.getMetaData(); FieldMapping[] fmsPK = cm.getPrimaryKeyFieldMappings(); val1.appendTo(sel, ctx, bstate.state1, buf, i); buf.append(" = "); val2.appendTo(sel, ctx, bstate.state2, buf, i);
public void appendTo(Select sel, ExpContext ctx, ExpState state, SQLBuffer sql, int index) { getValue().calculateValue(sel, ctx, state, null, null); getValue().appendSize(sel, ctx, state, sql); sel.append(sql, state.joins); }
public Class getType() { if (_cast != null) return _cast; return _map.getType(); }
public void groupBy(Select sel, ExpContext ctx, ExpState state) { KeyExpState estate = (KeyExpState) state; _key.groupBy(sel, ctx, estate.key); }