blob: 61e2490b916f92f03aef256931be08dcda3a7ecd [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_67) on Sat Sep 20 17:22:59 FET 2014 -->
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>Expression (Cayenne Documentation 3.1 API)</title>
<meta name="date" content="2014-09-20">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Expression (Cayenne Documentation 3.1 API)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Expression.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../org/apache/cayenne/exp/ExpressionException.html" title="class in org.apache.cayenne.exp"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/cayenne/exp/Expression.html" target="_top">Frames</a></li>
<li><a href="Expression.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.cayenne.exp</div>
<h2 title="Class Expression" class="title">Class Expression</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.cayenne.exp.Expression</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../org/apache/cayenne/util/XMLSerializable.html" title="interface in org.apache.cayenne.util">XMLSerializable</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../org/apache/cayenne/exp/parser/SimpleNode.html" title="class in org.apache.cayenne.exp.parser">SimpleNode</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="strong">Expression</span>
extends <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../org/apache/cayenne/util/XMLSerializable.html" title="interface in org.apache.cayenne.util">XMLSerializable</a></pre>
<div class="block">Superclass of Cayenne expressions that defines basic API for expressions use.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../serialized-form.html#org.apache.cayenne.exp.Expression">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#ADD">ADD</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#AND">AND</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#BETWEEN">BETWEEN</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_AND">BITWISE_AND</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_NOT">BITWISE_NOT</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_OR">BITWISE_OR</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#BITWISE_XOR">BITWISE_XOR</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#DB_PATH">DB_PATH</a></strong></code>
<div class="block">Expression describes a path relative to a DbEntity.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#DIVIDE">DIVIDE</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#EQUAL_TO">EQUAL_TO</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#FALSE">FALSE</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#GREATER_THAN">GREATER_THAN</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#GREATER_THAN_EQUAL_TO">GREATER_THAN_EQUAL_TO</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#IN">IN</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#LESS_THAN">LESS_THAN</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#LESS_THAN_EQUAL_TO">LESS_THAN_EQUAL_TO</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#LIKE">LIKE</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#LIKE_IGNORE_CASE">LIKE_IGNORE_CASE</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#LIST">LIST</a></strong></code>
<div class="block">Interpreted as a comma-separated list of literals.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#MULTIPLY">MULTIPLY</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#NEGATIVE">NEGATIVE</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT">NOT</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_BETWEEN">NOT_BETWEEN</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_EQUAL_TO">NOT_EQUAL_TO</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_IN">NOT_IN</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_LIKE">NOT_LIKE</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#NOT_LIKE_IGNORE_CASE">NOT_LIKE_IGNORE_CASE</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#OBJ_PATH">OBJ_PATH</a></strong></code>
<div class="block">Expression describes a path relative to an ObjEntity.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#OR">OR</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#PRUNED_NODE">PRUNED_NODE</a></strong></code>
<div class="block">A value that a Transformer might return to indicate that a node has to be pruned
from the expression during the transformation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#SUBTRACT">SUBTRACT</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#TRUE">TRUE</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#type">type</a></strong></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#Expression()">Expression</a></strong>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#andExp(org.apache.cayenne.exp.Expression)">andExp</a></strong>(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</code>
<div class="block">Chains this expression with another expression using "and".</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#deepCopy()">deepCopy</a></strong>()</code>
<div class="block">Clones this expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#encodeAsEJBQL(java.io.PrintWriter,%20java.lang.String)">encodeAsEJBQL</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;pw,
<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</code>
<div class="block">Stores a String representation of Expression as EJBQL using a provided PrintWriter.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#encodeAsString(java.io.PrintWriter)">encodeAsString</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;pw)</code>
<div class="block">Stores a String representation of Expression using a provided PrintWriter.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#encodeAsXML(org.apache.cayenne.util.XMLEncoder)">encodeAsXML</a></strong>(<a href="../../../../org/apache/cayenne/util/XMLEncoder.html" title="class in org.apache.cayenne.util">XMLEncoder</a>&nbsp;encoder)</code>
<div class="block">Encodes itself, wrapping the string into XML CDATA section.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#equals(java.lang.Object)">equals</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>abstract <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#evaluate(java.lang.Object)">evaluate</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</code>
<div class="block">Calculates expression value with object as a context for path expressions.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#expName()">expName</a></strong>()</code>
<div class="block">Returns String label for this expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#expWithParameters(java.util.Map)">expWithParameters</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters)</code>
<div class="block">A shortcut for <code>expWithParams(params, true)</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#expWithParameters(java.util.Map,%20boolean)">expWithParameters</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters,
boolean&nbsp;pruneMissing)</code>
<div class="block">Creates and returns a new Expression instance using this expression as a prototype.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#filter(java.util.Collection,%20java.util.Collection)">filter</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;source,
<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;target)</code>
<div class="block">Adds objects matching this expression from the source collection to the target
collection.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#filterObjects(java.util.List)">filterObjects</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;objects)</code>
<div class="block">Returns a list of objects that match the expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#first(java.util.List)">first</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;objects)</code>
<div class="block">Returns the first object in the list that matches the expression.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#flattenTree()">flattenTree</a></strong>()</code>
<div class="block">Restructures expression to make sure that there are no children of the same type as
this expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#fromString(java.lang.String)">fromString</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;expressionString)</code>
<div class="block">Parses string, converting it to Expression.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>abstract <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#getOperand(int)">getOperand</a></strong>(int&nbsp;index)</code>
<div class="block">Returns a value of operand at <code>index</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>abstract int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#getOperandCount()">getOperandCount</a></strong>()</code>
<div class="block">Returns a count of operands of this expression.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>abstract <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#getPathAliases()">getPathAliases</a></strong>()</code>
<div class="block">Returns a map of path aliases for this expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#getType()">getType</a></strong>()</code>
<div class="block">Returns a type of expression.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#joinExp(int,%20org.apache.cayenne.exp.Expression)">joinExp</a></strong>(int&nbsp;type,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</code>
<div class="block">Creates a new expression that joins this object with another expression, using
specified join type.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#match(java.lang.Object)">match</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</code>
<div class="block">Calculates expression boolean value with object as a context for path expressions.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#notExp()">notExp</a></strong>()</code>
<div class="block">Returns a logical NOT of current expression.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#orExp(org.apache.cayenne.exp.Expression)">orExp</a></strong>(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</code>
<div class="block">Chains this expression with another expression using "or".</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected abstract boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#pruneNodeForPrunedChild(java.lang.Object)">pruneNodeForPrunedChild</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;prunedChild)</code>
<div class="block">Returns true if this node should be pruned from expression tree in the event a
child is removed.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#setOperand(int,%20java.lang.Object)">setOperand</a></strong>(int&nbsp;index,
<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;value)</code>
<div class="block">Sets a value of operand at <code>index</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#setType(int)">setType</a></strong>(int&nbsp;type)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#shallowCopy()">shallowCopy</a></strong>()</code>
<div class="block">Creates a copy of this expression node, without copying children.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#toEJBQL(java.lang.String)">toEJBQL</a></strong>(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#toString()">toString</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#transform(org.apache.commons.collections.Transformer)">transform</a></strong>(org.apache.commons.collections.Transformer&nbsp;transformer)</code>
<div class="block">Creates a transformed copy of this expression, applying transformation provided by
Transformer to all its nodes.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#transformExpression(org.apache.commons.collections.Transformer)">transformExpression</a></strong>(org.apache.commons.collections.Transformer&nbsp;transformer)</code>
<div class="block">A recursive method called from "transform" to do the actual transformation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#traverse(org.apache.cayenne.exp.Expression,%20org.apache.cayenne.exp.TraversalHandler)">traverse</a></strong>(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;parentExp,
<a href="../../../../org/apache/cayenne/exp/TraversalHandler.html" title="interface in org.apache.cayenne.exp">TraversalHandler</a>&nbsp;visitor)</code>
<div class="block">Traverses itself and child expressions, notifying visitor via callback methods as
it goes.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/cayenne/exp/Expression.html#traverse(org.apache.cayenne.exp.TraversalHandler)">traverse</a></strong>(<a href="../../../../org/apache/cayenne/exp/TraversalHandler.html" title="interface in org.apache.cayenne.exp">TraversalHandler</a>&nbsp;visitor)</code>
<div class="block">Traverses itself and child expressions, notifying visitor via callback methods as
it goes.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="PRUNED_NODE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PRUNED_NODE</h4>
<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> PRUNED_NODE</pre>
<div class="block">A value that a Transformer might return to indicate that a node has to be pruned
from the expression during the transformation.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.2</dd></dl>
</li>
</ul>
<a name="AND">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AND</h4>
<pre>public static final&nbsp;int AND</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.AND">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="OR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OR</h4>
<pre>public static final&nbsp;int OR</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.OR">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="NOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT</h4>
<pre>public static final&nbsp;int NOT</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="EQUAL_TO">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>EQUAL_TO</h4>
<pre>public static final&nbsp;int EQUAL_TO</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.EQUAL_TO">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="NOT_EQUAL_TO">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_EQUAL_TO</h4>
<pre>public static final&nbsp;int NOT_EQUAL_TO</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_EQUAL_TO">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="LESS_THAN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LESS_THAN</h4>
<pre>public static final&nbsp;int LESS_THAN</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LESS_THAN">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="GREATER_THAN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>GREATER_THAN</h4>
<pre>public static final&nbsp;int GREATER_THAN</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.GREATER_THAN">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="LESS_THAN_EQUAL_TO">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LESS_THAN_EQUAL_TO</h4>
<pre>public static final&nbsp;int LESS_THAN_EQUAL_TO</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LESS_THAN_EQUAL_TO">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="GREATER_THAN_EQUAL_TO">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>GREATER_THAN_EQUAL_TO</h4>
<pre>public static final&nbsp;int GREATER_THAN_EQUAL_TO</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.GREATER_THAN_EQUAL_TO">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="BETWEEN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BETWEEN</h4>
<pre>public static final&nbsp;int BETWEEN</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BETWEEN">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="IN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>IN</h4>
<pre>public static final&nbsp;int IN</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.IN">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="LIKE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LIKE</h4>
<pre>public static final&nbsp;int LIKE</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LIKE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="LIKE_IGNORE_CASE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LIKE_IGNORE_CASE</h4>
<pre>public static final&nbsp;int LIKE_IGNORE_CASE</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LIKE_IGNORE_CASE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="ADD">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ADD</h4>
<pre>public static final&nbsp;int ADD</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.ADD">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="SUBTRACT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SUBTRACT</h4>
<pre>public static final&nbsp;int SUBTRACT</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.SUBTRACT">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="MULTIPLY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>MULTIPLY</h4>
<pre>public static final&nbsp;int MULTIPLY</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.MULTIPLY">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DIVIDE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DIVIDE</h4>
<pre>public static final&nbsp;int DIVIDE</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.DIVIDE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="NEGATIVE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NEGATIVE</h4>
<pre>public static final&nbsp;int NEGATIVE</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NEGATIVE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="TRUE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>TRUE</h4>
<pre>public static final&nbsp;int TRUE</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.TRUE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="FALSE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FALSE</h4>
<pre>public static final&nbsp;int FALSE</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.FALSE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="OBJ_PATH">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>OBJ_PATH</h4>
<pre>public static final&nbsp;int OBJ_PATH</pre>
<div class="block">Expression describes a path relative to an ObjEntity. OBJ_PATH expression is
resolved relative to some root ObjEntity. Path expression components are separated
by "." (dot). Path can point to either one of these:
<ul>
<li><i>An attribute of root ObjEntity.</i> For entity Gallery OBJ_PATH expression
"galleryName" will point to ObjAttribute "galleryName"
<li><i>Another ObjEntity related to root ObjEntity via a chain of
relationships.</i> For entity Gallery OBJ_PATH expression "paintingArray.toArtist"
will point to ObjEntity "Artist"
<li><i>ObjAttribute of another ObjEntity related to root ObjEntity via a chain of
relationships.</i> For entity Gallery OBJ_PATH expression
"paintingArray.toArtist.artistName" will point to ObjAttribute "artistName"
</ul></div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.OBJ_PATH">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DB_PATH">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DB_PATH</h4>
<pre>public static final&nbsp;int DB_PATH</pre>
<div class="block">Expression describes a path relative to a DbEntity. DB_PATH expression is resolved
relative to some root DbEntity. Path expression components are separated by "."
(dot). Path can point to either one of these:
<ul>
<li><i>An attribute of root DbEntity.</i> For entity GALLERY, DB_PATH expression
"GALLERY_NAME" will point to a DbAttribute "GALLERY_NAME".</li>
<li><i>Another DbEntity related to root DbEntity via a chain of relationships.</i>
For entity GALLERY DB_PATH expression "paintingArray.toArtist" will point to
DbEntity "ARTIST".</li>
<li><i>DbAttribute of another ObjEntity related to root DbEntity via a chain of
relationships.</i> For entity GALLERY DB_PATH expression
"paintingArray.toArtist.ARTIST_NAME" will point to DbAttribute "ARTIST_NAME".</li>
</ul></div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.DB_PATH">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="LIST">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LIST</h4>
<pre>public static final&nbsp;int LIST</pre>
<div class="block">Interpreted as a comma-separated list of literals.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.LIST">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="NOT_BETWEEN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_BETWEEN</h4>
<pre>public static final&nbsp;int NOT_BETWEEN</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_BETWEEN">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="NOT_IN">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_IN</h4>
<pre>public static final&nbsp;int NOT_IN</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_IN">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="NOT_LIKE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_LIKE</h4>
<pre>public static final&nbsp;int NOT_LIKE</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_LIKE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="NOT_LIKE_IGNORE_CASE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NOT_LIKE_IGNORE_CASE</h4>
<pre>public static final&nbsp;int NOT_LIKE_IGNORE_CASE</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.NOT_LIKE_IGNORE_CASE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="BITWISE_NOT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_NOT</h4>
<pre>public static final&nbsp;int BITWISE_NOT</pre>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.1</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_NOT">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="BITWISE_AND">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_AND</h4>
<pre>public static final&nbsp;int BITWISE_AND</pre>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.1</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_AND">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="BITWISE_OR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_OR</h4>
<pre>public static final&nbsp;int BITWISE_OR</pre>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.1</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_OR">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="BITWISE_XOR">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BITWISE_XOR</h4>
<pre>public static final&nbsp;int BITWISE_XOR</pre>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.1</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.cayenne.exp.Expression.BITWISE_XOR">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="type">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>type</h4>
<pre>protected&nbsp;int type</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="Expression()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Expression</h4>
<pre>public&nbsp;Expression()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="fromString(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fromString</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;fromString(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;expressionString)</pre>
<div class="block">Parses string, converting it to Expression. If string does not represent a
semantically correct expression, an ExpressionException is thrown.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="getPathAliases()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPathAliases</h4>
<pre>public abstract&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getPathAliases()</pre>
<div class="block">Returns a map of path aliases for this expression. It returns a non-empty map only
if this is a path expression and the aliases are known at the expression creation
time. Otherwise an empty map is returned.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.0</dd></dl>
</li>
</ul>
<a name="expName()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>expName</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;expName()</pre>
<div class="block">Returns String label for this expression. Used for debugging.</div>
</li>
</ul>
<a name="equals(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre>public&nbsp;boolean&nbsp;equals(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;object)</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="getType()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getType</h4>
<pre>public&nbsp;int&nbsp;getType()</pre>
<div class="block">Returns a type of expression. Most common types are defined as public static fields
of this interface.</div>
</li>
</ul>
<a name="setType(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setType</h4>
<pre>public&nbsp;void&nbsp;setType(int&nbsp;type)</pre>
</li>
</ul>
<a name="expWithParameters(java.util.Map)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>expWithParameters</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;expWithParameters(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters)</pre>
<div class="block">A shortcut for <code>expWithParams(params, true)</code>.</div>
</li>
</ul>
<a name="expWithParameters(java.util.Map, boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>expWithParameters</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;expWithParameters(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,?&gt;&nbsp;parameters,
boolean&nbsp;pruneMissing)</pre>
<div class="block">Creates and returns a new Expression instance using this expression as a prototype.
All ExpressionParam operands are substituted with the values in the
<code>params</code> map.
<p>
<i>Null values in the <code>params</code> map should be explicitly created in the
map for the corresponding key. </i>
</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>parameters</code> - a map of parameters, with each key being a string name of an
expression parameter, and value being the value that should be used in
the final expression.</dd><dd><code>pruneMissing</code> - If <code>true</code>, subexpressions that rely on missing
parameters will be pruned from the resulting tree. If <code>false</code>
, any missing values will generate an exception.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Expression resulting from the substitution of parameters with real values,
or null if the whole expression was pruned, due to the missing parameters.</dd></dl>
</li>
</ul>
<a name="joinExp(int, org.apache.cayenne.exp.Expression)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>joinExp</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;joinExp(int&nbsp;type,
<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</pre>
<div class="block">Creates a new expression that joins this object with another expression, using
specified join type. It is very useful for incrementally building chained
expressions, like long AND or OR statements.</div>
</li>
</ul>
<a name="andExp(org.apache.cayenne.exp.Expression)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>andExp</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;andExp(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</pre>
<div class="block">Chains this expression with another expression using "and".</div>
</li>
</ul>
<a name="orExp(org.apache.cayenne.exp.Expression)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>orExp</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;orExp(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;exp)</pre>
<div class="block">Chains this expression with another expression using "or".</div>
</li>
</ul>
<a name="notExp()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notExp</h4>
<pre>public abstract&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;notExp()</pre>
<div class="block">Returns a logical NOT of current expression.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.0.6</dd></dl>
</li>
</ul>
<a name="getOperandCount()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOperandCount</h4>
<pre>public abstract&nbsp;int&nbsp;getOperandCount()</pre>
<div class="block">Returns a count of operands of this expression. In real life there are unary (count
== 1), binary (count == 2) and ternary (count == 3) expressions.</div>
</li>
</ul>
<a name="getOperand(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOperand</h4>
<pre>public abstract&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;getOperand(int&nbsp;index)</pre>
<div class="block">Returns a value of operand at <code>index</code>. Operand indexing starts at 0.</div>
</li>
</ul>
<a name="setOperand(int, java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setOperand</h4>
<pre>public abstract&nbsp;void&nbsp;setOperand(int&nbsp;index,
<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;value)</pre>
<div class="block">Sets a value of operand at <code>index</code>. Operand indexing starts at 0.</div>
</li>
</ul>
<a name="evaluate(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>evaluate</h4>
<pre>public abstract&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;evaluate(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
<div class="block">Calculates expression value with object as a context for path expressions.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="match(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>match</h4>
<pre>public&nbsp;boolean&nbsp;match(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
<div class="block">Calculates expression boolean value with object as a context for path expressions.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="first(java.util.List)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>first</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;first(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;objects)</pre>
<div class="block">Returns the first object in the list that matches the expression.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.1</dd></dl>
</li>
</ul>
<a name="filterObjects(java.util.List)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>filterObjects</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;filterObjects(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;T&gt;&nbsp;objects)</pre>
<div class="block">Returns a list of objects that match the expression.</div>
</li>
</ul>
<a name="filter(java.util.Collection, java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>filter</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;?&gt;&nbsp;filter(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;source,
<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;T&gt;&nbsp;target)</pre>
<div class="block">Adds objects matching this expression from the source collection to the target
collection.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="deepCopy()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deepCopy</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;deepCopy()</pre>
<div class="block">Clones this expression.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="shallowCopy()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shallowCopy</h4>
<pre>public abstract&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;shallowCopy()</pre>
<div class="block">Creates a copy of this expression node, without copying children.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="pruneNodeForPrunedChild(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>pruneNodeForPrunedChild</h4>
<pre>protected abstract&nbsp;boolean&nbsp;pruneNodeForPrunedChild(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;prunedChild)</pre>
<div class="block">Returns true if this node should be pruned from expression tree in the event a
child is removed.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="flattenTree()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>flattenTree</h4>
<pre>protected abstract&nbsp;void&nbsp;flattenTree()</pre>
<div class="block">Restructures expression to make sure that there are no children of the same type as
this expression.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="traverse(org.apache.cayenne.exp.TraversalHandler)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>traverse</h4>
<pre>public&nbsp;void&nbsp;traverse(<a href="../../../../org/apache/cayenne/exp/TraversalHandler.html" title="interface in org.apache.cayenne.exp">TraversalHandler</a>&nbsp;visitor)</pre>
<div class="block">Traverses itself and child expressions, notifying visitor via callback methods as
it goes. This is an Expression-specific implementation of the "Visitor" design
pattern.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="traverse(org.apache.cayenne.exp.Expression, org.apache.cayenne.exp.TraversalHandler)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>traverse</h4>
<pre>protected&nbsp;void&nbsp;traverse(<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;parentExp,
<a href="../../../../org/apache/cayenne/exp/TraversalHandler.html" title="interface in org.apache.cayenne.exp">TraversalHandler</a>&nbsp;visitor)</pre>
<div class="block">Traverses itself and child expressions, notifying visitor via callback methods as
it goes.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="transform(org.apache.commons.collections.Transformer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>transform</h4>
<pre>public&nbsp;<a href="../../../../org/apache/cayenne/exp/Expression.html" title="class in org.apache.cayenne.exp">Expression</a>&nbsp;transform(org.apache.commons.collections.Transformer&nbsp;transformer)</pre>
<div class="block">Creates a transformed copy of this expression, applying transformation provided by
Transformer to all its nodes. Null transformer will result in an identical deep
copy of this expression.
<p>
To force a node and its children to be pruned from the copy, Transformer should
return Expression.PRUNED_NODE. Otherwise an expectation is that if a node is an
Expression it must be transformed to null or another Expression. Any other object
type would result in a ExpressionException.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="transformExpression(org.apache.commons.collections.Transformer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>transformExpression</h4>
<pre>protected&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;transformExpression(org.apache.commons.collections.Transformer&nbsp;transformer)</pre>
<div class="block">A recursive method called from "transform" to do the actual transformation.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>null, Expression.PRUNED_NODE or transformed expression.</dd><dt><span class="strong">Since:</span></dt>
<dd>1.2</dd></dl>
</li>
</ul>
<a name="encodeAsXML(org.apache.cayenne.util.XMLEncoder)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>encodeAsXML</h4>
<pre>public&nbsp;void&nbsp;encodeAsXML(<a href="../../../../org/apache/cayenne/util/XMLEncoder.html" title="class in org.apache.cayenne.util">XMLEncoder</a>&nbsp;encoder)</pre>
<div class="block">Encodes itself, wrapping the string into XML CDATA section.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../org/apache/cayenne/util/XMLSerializable.html#encodeAsXML(org.apache.cayenne.util.XMLEncoder)">encodeAsXML</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/cayenne/util/XMLSerializable.html" title="interface in org.apache.cayenne.util">XMLSerializable</a></code></dd>
<dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="encodeAsString(java.io.PrintWriter)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>encodeAsString</h4>
<pre>public abstract&nbsp;void&nbsp;encodeAsString(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;pw)</pre>
<div class="block">Stores a String representation of Expression using a provided PrintWriter.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>1.1</dd></dl>
</li>
</ul>
<a name="encodeAsEJBQL(java.io.PrintWriter, java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>encodeAsEJBQL</h4>
<pre>public abstract&nbsp;void&nbsp;encodeAsEJBQL(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/io/PrintWriter.html?is-external=true" title="class or interface in java.io">PrintWriter</a>&nbsp;pw,
<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</pre>
<div class="block">Stores a String representation of Expression as EJBQL using a provided PrintWriter.
DB path expressions produce non-standard EJBQL path expressions.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.0</dd></dl>
</li>
</ul>
<a name="toString()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="toEJBQL(java.lang.String)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toEJBQL</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toEJBQL(<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootId)</pre>
<dl><dt><span class="strong">Since:</span></dt>
<dd>3.0</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Expression.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../org/apache/cayenne/exp/ExpressionException.html" title="class in org.apache.cayenne.exp"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/cayenne/exp/Expression.html" target="_top">Frames</a></li>
<li><a href="Expression.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2001&#x2013;2014 <a href="http://cayenne.apache.org/">Apache Cayenne</a>. All rights reserved.</small></p>
</body>
</html>