set.append("( ");
set.append(getExpressionString(mc, omdb, ((ExpressionGroup) exp )
.getGroup(), args, prefix ));
set.append(" )");
} else if (exp instanceof ExpressionOperator) {
ExpressionOperator oper = (ExpressionOperator) exp;
set.append(getExpressionString(mc, omdb, oper.getExpressionA(), args, prefix ));
if (oper.getOperator() == ExpressionOperator.AND)
set.append(" AND ");
else
set.append(" OR ");
set.append(getExpressionString(mc, omdb, oper.getExpressionB(), args, prefix ));
} else if (exp.isSpecial()) {
throw new IllegalArgumentException(
"Unsupported Special Expression [" + exp + "]");
} else {
MetaField f = mc.getMetaField(exp.getField());