1 28 29 package com.caucho.amber.expr.fun; 30 31 import com.caucho.amber.expr.AmberExpr; 32 import com.caucho.amber.query.QueryParser; 33 import com.caucho.util.CharBuffer; 34 import com.caucho.util.L10N; 35 36 import java.util.ArrayList ; 37 38 39 42 public class UpperFunExpr extends FunExpr { 43 private static final L10N L = new L10N(UpperFunExpr.class); 44 45 48 protected UpperFunExpr(QueryParser parser, 49 ArrayList <AmberExpr> args) 50 { 51 super(parser, "upper", args, false); 52 } 53 54 public static FunExpr create(QueryParser parser, 55 ArrayList <AmberExpr> args) 56 { 57 return new UpperFunExpr(parser, args); 58 } 59 60 63 public void generateWhere(CharBuffer cb) 64 { 65 generateInternalWhere(cb, true); 66 } 67 68 71 public void generateUpdateWhere(CharBuffer cb) 72 { 73 generateInternalWhere(cb, false); 74 } 75 76 79 void generateInternalWhere(CharBuffer cb, 80 boolean select) 81 { 82 ArrayList <AmberExpr> args = getArgs(); 83 84 int n = args.size(); 85 86 90 cb.append("upper("); 91 92 if (select) 93 args.get(0).generateWhere(cb); 94 else 95 args.get(0).generateUpdateWhere(cb); 96 97 cb.append(")"); 98 } 99 } 100 | Popular Tags |