1 16 17 package org.apache.taglibs.standard.lang.jpath.expression; 18 19 import javax.servlet.jsp.PageContext ; 20 21 import org.apache.taglibs.standard.lang.jpath.adapter.ConversionException; 22 import org.apache.taglibs.standard.lang.jpath.adapter.Convert; 23 import org.apache.taglibs.standard.lang.jpath.adapter.IterationContext; 24 25 32 public class OrOperator extends SimpleNode { 33 34 41 public OrOperator(int id) { 42 super(id); 43 } 44 45 53 public OrOperator(Parser p, int id) { 54 super(p, id); 55 } 56 57 67 public String toNormalizedString() { 68 69 String normalized = ""; 70 71 normalized = "(" + jjtGetChild(0).toNormalizedString() + " " 72 + getTokenImage(ParserConstants.OR) + " " 73 + jjtGetChild(1).toNormalizedString() + ")"; 74 75 return normalized; 76 } 77 78 95 public Object evaluate(PageContext pageContext, IterationContext icontext) 96 throws EvaluationException { 97 98 Boolean result; 99 100 try { 101 boolean leftSide = 102 Convert.toBoolean(jjtGetChild(0).evaluate(pageContext, 103 icontext)).booleanValue(); 104 boolean rightSide = 105 Convert.toBoolean(jjtGetChild(1).evaluate(pageContext, 106 icontext)).booleanValue(); 107 108 result = new Boolean (leftSide || rightSide); 109 } catch (ConversionException ce) { 110 throw new EvaluationException(this, ce.getMessage()); 111 } 112 113 return result; 114 } 115 } 116 | Popular Tags |