/** * @see java.lang.Object#clone() */ public Object clone() { Expression expr = (Expression)expression.clone(); int whenCount = getWhenCount(); ArrayList whenCopy = new ArrayList(whenCount); ArrayList thenCopy = new ArrayList(whenCount); for(int i = 0; i < whenCount; i++) { whenCopy.add(getWhenExpression(i).clone()); thenCopy.add(getThenExpression(i).clone()); } Expression elseExpr = getElseExpression(); if (elseExpr != null) { elseExpr = (Expression)elseExpr.clone(); } CaseExpression copy = new CaseExpression(expr, whenCopy, thenCopy); copy.setType(getType()); copy.setElseExpression(elseExpr); return copy; }
/** * @see java.lang.Object#clone() */ public Object clone() { Expression expr = (Expression)expression.clone(); int whenCount = getWhenCount(); ArrayList whenCopy = new ArrayList(whenCount); ArrayList thenCopy = new ArrayList(whenCount); for(int i = 0; i < whenCount; i++) { whenCopy.add(getWhenExpression(i).clone()); thenCopy.add(getThenExpression(i).clone()); } Expression elseExpr = getElseExpression(); if (elseExpr != null) { elseExpr = (Expression)elseExpr.clone(); } CaseExpression copy = new CaseExpression(expr, whenCopy, thenCopy); copy.setType(getType()); copy.setElseExpression(elseExpr); return copy; }
/** * @see java.lang.Object#clone() */ public Object clone() { Expression expr = (Expression)expression.clone(); int whenCount = getWhenCount(); ArrayList whenCopy = new ArrayList(whenCount); ArrayList thenCopy = new ArrayList(whenCount); for(int i = 0; i < whenCount; i++) { whenCopy.add(getWhenExpression(i).clone()); thenCopy.add(getThenExpression(i).clone()); } Expression elseExpr = getElseExpression(); if (elseExpr != null) { elseExpr = (Expression)elseExpr.clone(); } CaseExpression copy = new CaseExpression(expr, whenCopy, thenCopy); copy.setType(getType()); copy.setElseExpression(elseExpr); return copy; }
public void testSetType() { CaseExpression expr = example(4); expr.setType(DataTypeManager.DefaultDataClasses.BIG_DECIMAL); assertEquals(DataTypeManager.DefaultDataClasses.BIG_DECIMAL, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.BIG_INTEGER); assertEquals(DataTypeManager.DefaultDataClasses.BIG_INTEGER, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.BLOB); assertEquals(DataTypeManager.DefaultDataClasses.BLOB, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.BOOLEAN); assertEquals(DataTypeManager.DefaultDataClasses.BOOLEAN, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.BYTE); assertEquals(DataTypeManager.DefaultDataClasses.BYTE, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.CHAR); assertEquals(DataTypeManager.DefaultDataClasses.CHAR, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.CLOB); assertEquals(DataTypeManager.DefaultDataClasses.CLOB, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.DATE); assertEquals(DataTypeManager.DefaultDataClasses.DATE, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.DOUBLE); assertEquals(DataTypeManager.DefaultDataClasses.DOUBLE, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.FLOAT); assertEquals(DataTypeManager.DefaultDataClasses.FLOAT, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.INTEGER); assertEquals(DataTypeManager.DefaultDataClasses.INTEGER, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.LONG); assertEquals(DataTypeManager.DefaultDataClasses.LONG, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.NULL); assertEquals(DataTypeManager.DefaultDataClasses.NULL, expr.getType()); expr.setType(DataTypeManager.DefaultDataClasses.OBJECT); assertEquals(DataTypeManager.DefaultDataClasses.OBJECT, expr.getType());
public void testGetType() { CaseExpression expr = example(4); assertNull(expr.getType()); expr.setType(Integer.class); assertEquals(Integer.class, expr.getType()); }
obj.setType(DataTypeManager.getDataTypeClass(thenTypeName));
obj.setType(DataTypeManager.getDataTypeClass(thenTypeName));
obj.setType(DataTypeManager.getDataTypeClass(thenTypeName));
CaseExpression expr = new CaseExpression(x, whens, thens); expr.setElseExpression(elseExpression); expr.setType(DataTypeManager.DefaultDataClasses.STRING);