if (debug) {
logger.log(BasicLevel.DEBUG, "pop expression: " + oe);
}
Expression str = (Expression) oe;
if (e instanceof BasicParameterOperand) {
e = new StringComparatorParameterOperand((BasicParameterOperand) e, null, ".*");
} else if (e instanceof BasicOperand) {
try {
e = new BasicOperand(((BasicOperand) e).getString() + ".*");
} catch (TypingException e1) {
throw new JDOException(
"Bad parameter type for the 'startsWith' method", e1);
}
}
e = new Like(str, e);
break;
}
case ENDS_WITH_OPERATOR:
{
stack.pop();
Object oe = stack.pop();
if (debug) {
logger.log(BasicLevel.DEBUG, "pop expression: " + oe);
}
Expression str = (Expression) oe;
if (e instanceof BasicParameterOperand) {
e = new StringComparatorParameterOperand((BasicParameterOperand) e, ".*", null);
} else if (e instanceof BasicOperand) {
try {
e = new BasicOperand("%" + ((BasicOperand) e).getString());
} catch (TypingException e1) {
throw new JDOException(