blob: 3e297a87f53211930cd2fe8b31ec110649dbec68 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_06) on Wed Jul 19 14:42:50 EDT 2006 -->
<TITLE>
ObjRelationship (Cayenne API Documentation - v.1.2)
</TITLE>
<META NAME="keywords" CONTENT="org.objectstyle.cayenne.map.ObjRelationship class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../objectstyle-javadoc.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="ObjRelationship (Cayenne API Documentation - v.1.2)";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/objectstyle/cayenne/map/ObjEntity.html" title="class in org.objectstyle.cayenne.map"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/objectstyle/cayenne/map/Procedure.html" title="class in org.objectstyle.cayenne.map"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/objectstyle/cayenne/map/ObjRelationship.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ObjRelationship.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.objectstyle.cayenne.map</FONT>
<BR>
Class ObjRelationship</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html" title="class in org.objectstyle.cayenne.map">org.objectstyle.cayenne.map.Relationship</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.objectstyle.cayenne.map.ObjRelationship</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>java.io.Serializable, java.util.EventListener, <A HREF="../../../../org/objectstyle/cayenne/util/CayenneMapEntry.html" title="interface in org.objectstyle.cayenne.util">CayenneMapEntry</A>, <A HREF="../../../../org/objectstyle/cayenne/util/XMLSerializable.html" title="interface in org.objectstyle.cayenne.util">XMLSerializable</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>ObjRelationship</B><DT>extends <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html" title="class in org.objectstyle.cayenne.map">Relationship</A><DT>implements java.util.EventListener</DL>
</PRE>
<P>
Describes navigational association between two Java classes, represented as source and
target ObjEntity. Maps to a path of DbRelationships.
<P>
<P>
<DL>
<DT><B>Author:</B></DT>
<DD>Andrei Adamchik</DD>
<DT><B>See Also:</B><DD><A HREF="../../../../serialized-form.html#org.objectstyle.cayenne.map.ObjRelationship">Serialized Form</A></DL>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#dbRelationshipPath">dbRelationshipPath</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;java.util.List</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#dbRelationships">dbRelationships</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#deleteRule">deleteRule</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#usedForLocking">usedForLocking</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.objectstyle.cayenne.map.Relationship"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.objectstyle.cayenne.map.<A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html" title="class in org.objectstyle.cayenne.map">Relationship</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#name">name</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#sourceEntity">sourceEntity</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#targetEntityName">targetEntityName</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#toMany">toMany</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#ObjRelationship()">ObjRelationship</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#ObjRelationship(java.lang.String)">ObjRelationship</A></B>(java.lang.String&nbsp;name)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#addDbRelationship(org.objectstyle.cayenne.map.DbRelationship)">addDbRelationship</A></B>(<A HREF="../../../../org/objectstyle/cayenne/map/DbRelationship.html" title="class in org.objectstyle.cayenne.map">DbRelationship</A>&nbsp;dbRel)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Appends a DbRelationship to the existing list of DbRelationships.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#clearDbRelationships()">clearDbRelationships</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#dbRelationshipDidChange(org.objectstyle.cayenne.map.event.RelationshipEvent)">dbRelationshipDidChange</A></B>(<A HREF="../../../../org/objectstyle/cayenne/map/event/RelationshipEvent.html" title="class in org.objectstyle.cayenne.map.event">RelationshipEvent</A>&nbsp;event)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#encodeAsXML(org.objectstyle.cayenne.util.XMLEncoder)">encodeAsXML</A></B>(<A HREF="../../../../org/objectstyle/cayenne/util/XMLEncoder.html" title="class in org.objectstyle.cayenne.util">XMLEncoder</A>&nbsp;encoder)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Prints itself as XML to the provided XMLEncoder.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html" title="class in org.objectstyle.cayenne.map">ObjRelationship</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#getClientRelationship()">getClientRelationship</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an ObjAttribute stripped of any server-side information, such as
DbAttribute mapping.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#getDbRelationshipPath()">getDbRelationshipPath</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a dot-separated path over mapped DbRelationships.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.List</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#getDbRelationships()">getDbRelationships</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an immutable list of underlying DbRelationships.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#getDeleteRule()">getDeleteRule</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the deleteRule.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#getReverseDbRelationshipPath()">getReverseDbRelationshipPath</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a reversed dbRelationship path.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html" title="class in org.objectstyle.cayenne.map">ObjRelationship</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#getReverseRelationship()">getReverseRelationship</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a "complimentary" ObjRelationship going in the opposite direction.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#getReverseRelationshipName()">getReverseRelationshipName</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the name of a complimentary relationship going in the opposite direction or
null if it doesn't exist.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/objectstyle/cayenne/map/Entity.html" title="class in org.objectstyle.cayenne.map">Entity</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#getTargetEntity()">getTargetEntity</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a target ObjEntity of this relationship.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#isFlattened()">isFlattened</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the relationship is a "flattened" relationship.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#isReadOnly()">isReadOnly</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the relationship is flattened, but is not of the single case that
can have automatic write support.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#isSourceIndependentFromTargetChange()">isSourceIndependentFromTargetChange</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a boolean indicating whether modifying a target of such relationship in any
way will not change the underlying table row of the source.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#isToDependentEntity()">isToDependentEntity</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if underlying DbRelationships point to dependent entity.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#isToMany()">isToMany</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a boolean value that determines relationship multiplicity.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#isToPK()">isToPK</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the underlying DbRelationships point to a at least one of the
columns of the target entity.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#isUsedForLocking()">isUsedForLocking</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns whether this attribute should be used for locking.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#removeDbRelationship(org.objectstyle.cayenne.map.DbRelationship)">removeDbRelationship</A></B>(<A HREF="../../../../org/objectstyle/cayenne/map/DbRelationship.html" title="class in org.objectstyle.cayenne.map">DbRelationship</A>&nbsp;dbRel)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes the relationship <code>dbRel</code> from the list of relationships.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#setDbRelationshipPath(java.lang.String)">setDbRelationshipPath</A></B>(java.lang.String&nbsp;relationshipPath)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets mapped DbRelationships as a dot-separated path.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#setDeleteRule(int)">setDeleteRule</A></B>(int&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the delete rule of the relationship.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#setUsedForLocking(boolean)">setUsedForLocking</A></B>(boolean&nbsp;usedForLocking)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets whether this attribute should be used for locking.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#toString()">toString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Overrides Object.toString() to return informative description.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.objectstyle.cayenne.map.Relationship"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.objectstyle.cayenne.map.<A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html" title="class in org.objectstyle.cayenne.map">Relationship</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#getName()">getName</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#getParent()">getParent</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#getSourceEntity()">getSourceEntity</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#getTargetEntityName()">getTargetEntityName</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#setName(java.lang.String)">setName</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#setParent(java.lang.Object)">setParent</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#setSourceEntity(org.objectstyle.cayenne.map.Entity)">setSourceEntity</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#setTargetEntity(org.objectstyle.cayenne.map.Entity)">setTargetEntity</A>, <A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#setTargetEntityName(java.lang.String)">setTargetEntityName</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="deleteRule"><!-- --></A><H3>
deleteRule</H3>
<PRE>
protected int <B>deleteRule</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="usedForLocking"><!-- --></A><H3>
usedForLocking</H3>
<PRE>
protected boolean <B>usedForLocking</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="dbRelationshipPath"><!-- --></A><H3>
dbRelationshipPath</H3>
<PRE>
protected java.lang.String <B>dbRelationshipPath</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="dbRelationships"><!-- --></A><H3>
dbRelationships</H3>
<PRE>
protected java.util.List <B>dbRelationships</B></PRE>
<DL>
<DL>
</DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="ObjRelationship()"><!-- --></A><H3>
ObjRelationship</H3>
<PRE>
public <B>ObjRelationship</B>()</PRE>
<DL>
</DL>
<HR>
<A NAME="ObjRelationship(java.lang.String)"><!-- --></A><H3>
ObjRelationship</H3>
<PRE>
public <B>ObjRelationship</B>(java.lang.String&nbsp;name)</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="encodeAsXML(org.objectstyle.cayenne.util.XMLEncoder)"><!-- --></A><H3>
encodeAsXML</H3>
<PRE>
public void <B>encodeAsXML</B>(<A HREF="../../../../org/objectstyle/cayenne/util/XMLEncoder.html" title="class in org.objectstyle.cayenne.util">XMLEncoder</A>&nbsp;encoder)</PRE>
<DL>
<DD>Prints itself as XML to the provided XMLEncoder.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/objectstyle/cayenne/util/XMLSerializable.html#encodeAsXML(org.objectstyle.cayenne.util.XMLEncoder)">encodeAsXML</A></CODE> in interface <CODE><A HREF="../../../../org/objectstyle/cayenne/util/XMLSerializable.html" title="interface in org.objectstyle.cayenne.util">XMLSerializable</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Since:</B></DT>
<DD>1.1</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="getTargetEntity()"><!-- --></A><H3>
getTargetEntity</H3>
<PRE>
public <A HREF="../../../../org/objectstyle/cayenne/map/Entity.html" title="class in org.objectstyle.cayenne.map">Entity</A> <B>getTargetEntity</B>()</PRE>
<DL>
<DD>Returns a target ObjEntity of this relationship. Entity is looked up in the parent
DataMap using "targetEntityName".
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#getTargetEntity()">getTargetEntity</A></CODE> in class <CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html" title="class in org.objectstyle.cayenne.map">Relationship</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getReverseRelationshipName()"><!-- --></A><H3>
getReverseRelationshipName</H3>
<PRE>
public java.lang.String <B>getReverseRelationshipName</B>()</PRE>
<DL>
<DD>Returns the name of a complimentary relationship going in the opposite direction or
null if it doesn't exist.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Since:</B></DT>
<DD>1.2</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="getReverseRelationship()"><!-- --></A><H3>
getReverseRelationship</H3>
<PRE>
public <A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html" title="class in org.objectstyle.cayenne.map">ObjRelationship</A> <B>getReverseRelationship</B>()</PRE>
<DL>
<DD>Returns a "complimentary" ObjRelationship going in the opposite direction. Returns
null if no such relationship is found.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getDbRelationships()"><!-- --></A><H3>
getDbRelationships</H3>
<PRE>
public java.util.List <B>getDbRelationships</B>()</PRE>
<DL>
<DD>Returns an immutable list of underlying DbRelationships.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="addDbRelationship(org.objectstyle.cayenne.map.DbRelationship)"><!-- --></A><H3>
addDbRelationship</H3>
<PRE>
public void <B>addDbRelationship</B>(<A HREF="../../../../org/objectstyle/cayenne/map/DbRelationship.html" title="class in org.objectstyle.cayenne.map">DbRelationship</A>&nbsp;dbRel)</PRE>
<DL>
<DD>Appends a DbRelationship to the existing list of DbRelationships.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="removeDbRelationship(org.objectstyle.cayenne.map.DbRelationship)"><!-- --></A><H3>
removeDbRelationship</H3>
<PRE>
public void <B>removeDbRelationship</B>(<A HREF="../../../../org/objectstyle/cayenne/map/DbRelationship.html" title="class in org.objectstyle.cayenne.map">DbRelationship</A>&nbsp;dbRel)</PRE>
<DL>
<DD>Removes the relationship <code>dbRel</code> from the list of relationships.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="clearDbRelationships()"><!-- --></A><H3>
clearDbRelationships</H3>
<PRE>
public void <B>clearDbRelationships</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isSourceIndependentFromTargetChange()"><!-- --></A><H3>
isSourceIndependentFromTargetChange</H3>
<PRE>
public boolean <B>isSourceIndependentFromTargetChange</B>()</PRE>
<DL>
<DD>Returns a boolean indicating whether modifying a target of such relationship in any
way will not change the underlying table row of the source.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Since:</B></DT>
<DD>1.1</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="isToDependentEntity()"><!-- --></A><H3>
isToDependentEntity</H3>
<PRE>
public boolean <B>isToDependentEntity</B>()</PRE>
<DL>
<DD>Returns true if underlying DbRelationships point to dependent entity.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isToPK()"><!-- --></A><H3>
isToPK</H3>
<PRE>
public boolean <B>isToPK</B>()</PRE>
<DL>
<DD>Returns true if the underlying DbRelationships point to a at least one of the
columns of the target entity.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Since:</B></DT>
<DD>1.1</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="isFlattened()"><!-- --></A><H3>
isFlattened</H3>
<PRE>
public boolean <B>isFlattened</B>()</PRE>
<DL>
<DD>Returns true if the relationship is a "flattened" relationship. A relationship is
considered "flattened" if it maps to more than one DbRelationship. Such chain of
DbRelationships is also called "relationship path". All flattened relationships are
at least readable, but only those formed across a many-many join table (with no
custom attributes other than foreign keys) can be automatically written.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>flag indicating if the relationship is flattened or not.<DT><B>See Also:</B><DD><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#isReadOnly()"><CODE>isReadOnly()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="isReadOnly()"><!-- --></A><H3>
isReadOnly</H3>
<PRE>
public boolean <B>isReadOnly</B>()</PRE>
<DL>
<DD>Returns true if the relationship is flattened, but is not of the single case that
can have automatic write support. Otherwise, it returns false.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>flag indicating if the relationship is read only or not</DL>
</DD>
</DL>
<HR>
<A NAME="isToMany()"><!-- --></A><H3>
isToMany</H3>
<PRE>
public boolean <B>isToMany</B>()</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#isToMany()">Relationship</A></CODE></B></DD>
<DD>Returns a boolean value that determines relationship multiplicity. This defines
semantics of the connection between two nodes described by the source and target
entities. E.g. to-many relationship between two Persistent object classes means
that a source object would have a collection of target objects. This is a read-only
property.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#isToMany()">isToMany</A></CODE> in class <CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html" title="class in org.objectstyle.cayenne.map">Relationship</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getDeleteRule()"><!-- --></A><H3>
getDeleteRule</H3>
<PRE>
public int <B>getDeleteRule</B>()</PRE>
<DL>
<DD>Returns the deleteRule. The delete rule is a constant from the DeleteRule class,
and specifies what should happen to the destination object when the source object
is deleted.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>int a constant from DeleteRule<DT><B>See Also:</B><DD><A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html#setDeleteRule(int)"><CODE>setDeleteRule(int)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="setDeleteRule(int)"><!-- --></A><H3>
setDeleteRule</H3>
<PRE>
public void <B>setDeleteRule</B>(int&nbsp;value)</PRE>
<DL>
<DD>Sets the delete rule of the relationship.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - New delete rule. Must be one of the constants defined in DeleteRule
class.
<DT><B>Throws:</B>
<DD><CODE>java.lang.IllegalArgumentException</CODE> - if the value is not a valid delete rule.<DT><B>See Also:</B><DD><A HREF="../../../../org/objectstyle/cayenne/map/DeleteRule.html" title="class in org.objectstyle.cayenne.map"><CODE>DeleteRule</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="dbRelationshipDidChange(org.objectstyle.cayenne.map.event.RelationshipEvent)"><!-- --></A><H3>
dbRelationshipDidChange</H3>
<PRE>
public void <B>dbRelationshipDidChange</B>(<A HREF="../../../../org/objectstyle/cayenne/map/event/RelationshipEvent.html" title="class in org.objectstyle.cayenne.map.event">RelationshipEvent</A>&nbsp;event)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isUsedForLocking()"><!-- --></A><H3>
isUsedForLocking</H3>
<PRE>
public boolean <B>isUsedForLocking</B>()</PRE>
<DL>
<DD>Returns whether this attribute should be used for locking.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Since:</B></DT>
<DD>1.1</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="setUsedForLocking(boolean)"><!-- --></A><H3>
setUsedForLocking</H3>
<PRE>
public void <B>setUsedForLocking</B>(boolean&nbsp;usedForLocking)</PRE>
<DL>
<DD>Sets whether this attribute should be used for locking.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Since:</B></DT>
<DD>1.1</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="getDbRelationshipPath()"><!-- --></A><H3>
getDbRelationshipPath</H3>
<PRE>
public java.lang.String <B>getDbRelationshipPath</B>()</PRE>
<DL>
<DD>Returns a dot-separated path over mapped DbRelationships.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Since:</B></DT>
<DD>1.1</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="getReverseDbRelationshipPath()"><!-- --></A><H3>
getReverseDbRelationshipPath</H3>
<PRE>
public java.lang.String <B>getReverseDbRelationshipPath</B>()
throws <A HREF="../../../../org/objectstyle/cayenne/exp/ExpressionException.html" title="class in org.objectstyle.cayenne.exp">ExpressionException</A></PRE>
<DL>
<DD>Returns a reversed dbRelationship path.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/objectstyle/cayenne/exp/ExpressionException.html" title="class in org.objectstyle.cayenne.exp">ExpressionException</A></CODE><DT><B>Since:</B></DT>
<DD>1.2</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="setDbRelationshipPath(java.lang.String)"><!-- --></A><H3>
setDbRelationshipPath</H3>
<PRE>
public void <B>setDbRelationshipPath</B>(java.lang.String&nbsp;relationshipPath)</PRE>
<DL>
<DD>Sets mapped DbRelationships as a dot-separated path.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="toString()"><!-- --></A><H3>
toString</H3>
<PRE>
public java.lang.String <B>toString</B>()</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#toString()">Relationship</A></CODE></B></DD>
<DD>Overrides Object.toString() to return informative description.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html#toString()">toString</A></CODE> in class <CODE><A HREF="../../../../org/objectstyle/cayenne/map/Relationship.html" title="class in org.objectstyle.cayenne.map">Relationship</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getClientRelationship()"><!-- --></A><H3>
getClientRelationship</H3>
<PRE>
public <A HREF="../../../../org/objectstyle/cayenne/map/ObjRelationship.html" title="class in org.objectstyle.cayenne.map">ObjRelationship</A> <B>getClientRelationship</B>()</PRE>
<DL>
<DD>Returns an ObjAttribute stripped of any server-side information, such as
DbAttribute mapping.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Since:</B></DT>
<DD>1.2</DD>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/objectstyle/cayenne/map/ObjEntity.html" title="class in org.objectstyle.cayenne.map"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/objectstyle/cayenne/map/Procedure.html" title="class in org.objectstyle.cayenne.map"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/objectstyle/cayenne/map/ObjRelationship.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ObjRelationship.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
<!--@SFLOGO@--> &nbsp; <i>Copyright &#169; 2001-2006 <a href=
"http://objectstyle.org" target="_top">ObjectStyle.org</a> All Rights Reserved.</i>
</BODY>
</HTML>