<!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_11) on Mon May 19 19:21:00 PDT 2008 -->
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<TITLE>
ValueMetaData (OpenJPA 1.1.0 API)
</TITLE>

<META NAME="keywords" CONTENT="org.apache.openjpa.meta.ValueMetaData interface">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    parent.document.title="ValueMetaData (OpenJPA 1.1.0 API)";
}
</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="class-use/ValueMetaData.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&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-all.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/apache/openjpa/meta/UpdateStrategies.html" title="class in org.apache.openjpa.meta"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/openjpa/meta/ValueMetaDataImpl.html" title="class in org.apache.openjpa.meta"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/openjpa/meta/ValueMetaData.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="ValueMetaData.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;CONSTR&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;CONSTR&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.apache.openjpa.meta</FONT>
<BR>
Interface ValueMetaData</H2>
<DL>
<DT><B>All Superinterfaces:</B> <DD><A HREF="../../../../org/apache/openjpa/meta/MetaDataContext.html" title="interface in org.apache.openjpa.meta">MetaDataContext</A>, <A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html" title="interface in org.apache.openjpa.meta">MetaDataModes</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Serializable.html" title="class or interface in java.io">Serializable</A></DD>
</DL>
<DL>
<DT><B>All Known Subinterfaces:</B> <DD><A HREF="../../../../org/apache/openjpa/jdbc/meta/ValueMapping.html" title="interface in org.apache.openjpa.jdbc.meta">ValueMapping</A></DD>
</DL>
<DL>
<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../org/apache/openjpa/jdbc/meta/FieldMapping.html" title="class in org.apache.openjpa.jdbc.meta">FieldMapping</A>, <A HREF="../../../../org/apache/openjpa/meta/FieldMetaData.html" title="class in org.apache.openjpa.meta">FieldMetaData</A>, <A HREF="../../../../org/apache/openjpa/jdbc/meta/ValueMappingImpl.html" title="class in org.apache.openjpa.jdbc.meta">ValueMappingImpl</A>, <A HREF="../../../../org/apache/openjpa/meta/ValueMetaDataImpl.html" title="class in org.apache.openjpa.meta">ValueMetaDataImpl</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public interface <B>ValueMetaData</B><DT>extends <A HREF="../../../../org/apache/openjpa/meta/MetaDataContext.html" title="interface in org.apache.openjpa.meta">MetaDataContext</A>, <A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html" title="interface in org.apache.openjpa.meta">MetaDataModes</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Serializable.html" title="class or interface in java.io">Serializable</A></DL>
</PRE>

<P>
Holds metadata on a value; this could be a field value, key value, or
 element value.
<P>

<P>
<DL>
<DT><B>Since:</B></DT>
  <DD>0.4.0</DD>
<DT><B>Author:</B></DT>
  <DD>Abe White</DD>
</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>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#CASCADE_AUTO">CASCADE_AUTO</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Use automatic cascade behavior.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#CASCADE_IMMEDIATE">CASCADE_IMMEDIATE</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The operation is immediately cascaded to this field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#CASCADE_NONE">CASCADE_NONE</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The operation is not cascaded to this field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#MAPPED_BY_PK">MAPPED_BY_PK</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Marker to set on <A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#setValueMappedBy(java.lang.String)"><CODE>setValueMappedBy(java.lang.String)</CODE></A> to denote that the map key
 is mapped by the primary key field of the value.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.openjpa.meta.MetaDataModes"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface org.apache.openjpa.meta.<A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html" title="interface in org.apache.openjpa.meta">MetaDataModes</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html#MODE_ALL">MODE_ALL</A>, <A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html#MODE_ANN_MAPPING">MODE_ANN_MAPPING</A>, <A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html#MODE_MAPPING">MODE_MAPPING</A>, <A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html#MODE_MAPPING_INIT">MODE_MAPPING_INIT</A>, <A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html#MODE_META">MODE_META</A>, <A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html#MODE_NONE">MODE_NONE</A>, <A HREF="../../../../org/apache/openjpa/meta/MetaDataModes.html#MODE_QUERY">MODE_QUERY</A></CODE></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;<A HREF="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#addEmbeddedMetaData()">addEmbeddedMetaData</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add embedded metadata for this value.</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/apache/openjpa/meta/ValueMetaData.html#copy(org.apache.openjpa.meta.ValueMetaData)">copy</A></B>(<A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html" title="interface in org.apache.openjpa.meta">ValueMetaData</A>&nbsp;vmd)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copy state from the given value to this one.</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/apache/openjpa/meta/ValueMetaData.html#getCascadeAttach()">getCascadeAttach</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cascade behavior for attach operation.</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/apache/openjpa/meta/ValueMetaData.html#getCascadeDelete()">getCascadeDelete</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cascade behavior for delete operation.</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/apache/openjpa/meta/ValueMetaData.html#getCascadePersist()">getCascadePersist</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cascade behavior for persist operation.</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/apache/openjpa/meta/ValueMetaData.html#getCascadeRefresh()">getCascadeRefresh</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cascade behavior for refresh operation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getDeclaredType()">getDeclaredType</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the declared class of the value.</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/apache/openjpa/meta/ValueMetaData.html#getDeclaredTypeCode()">getDeclaredTypeCode</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the declared type code of the value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getDeclaredTypeMetaData()">getDeclaredTypeMetaData</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return metadata for the value's class, if the type is persistent.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getEmbeddedMetaData()">getEmbeddedMetaData</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The embedded class metadata for the value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/openjpa/meta/FieldMetaData.html" title="class in org.apache.openjpa.meta">FieldMetaData</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getFieldMetaData()">getFieldMetaData</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the owning field for this value.</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/apache/openjpa/meta/ValueMetaData.html#getResolve()">getResolve</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Resolve mode for metadata.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getType()">getType</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value class.</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/apache/openjpa/meta/ValueMetaData.html#getTypeCode()">getTypeCode</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The type code of the value class.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getTypeMetaData()">getTypeMetaData</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The metadata for the value class, if the type is persistent.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getTypeOverride()">getTypeOverride</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User-supplied type overriding assumed type based on field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getValueMappedBy()">getValueMappedBy</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The field that this value shares a mapping with.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/openjpa/meta/FieldMetaData.html" title="class in org.apache.openjpa.meta">FieldMetaData</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getValueMappedByMetaData()">getValueMappedByMetaData</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The field that this value shares a mapping with.</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/apache/openjpa/meta/ValueMetaData.html#isDeclaredTypePC()">isDeclaredTypePC</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether the type is a persistence capable instance.</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/apache/openjpa/meta/ValueMetaData.html#isEmbedded()">isEmbedded</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This attribute is a hint to the implementation to store this value
 in the same structure as the class, rather than as a separate datastore
 structure.</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/apache/openjpa/meta/ValueMetaData.html#isEmbeddedPC()">isEmbeddedPC</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether this is an embedded persistence capable value.</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/apache/openjpa/meta/ValueMetaData.html#isSerialized()">isSerialized</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether this value is serialized when stored.</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/apache/openjpa/meta/ValueMetaData.html#isTypePC()">isTypePC</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether the type is a persistence capable instance.</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/apache/openjpa/meta/ValueMetaData.html#resolve(int)">resolve</A></B>(int&nbsp;mode)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Resolve and validate metadata.</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/apache/openjpa/meta/ValueMetaData.html#setCascadeAttach(int)">setCascadeAttach</A></B>(int&nbsp;cascade)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cascade behavior for attach operation.</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/apache/openjpa/meta/ValueMetaData.html#setCascadeDelete(int)">setCascadeDelete</A></B>(int&nbsp;cascade)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cascade behavior for deletion.</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/apache/openjpa/meta/ValueMetaData.html#setCascadePersist(int)">setCascadePersist</A></B>(int&nbsp;cascade)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cascade behavior for persist operation.</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/apache/openjpa/meta/ValueMetaData.html#setCascadeRefresh(int)">setCascadeRefresh</A></B>(int&nbsp;cascade)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cascade behavior for refresh operation.</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/apache/openjpa/meta/ValueMetaData.html#setDeclaredType(java.lang.Class)">setDeclaredType</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the declared class of the value.</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/apache/openjpa/meta/ValueMetaData.html#setDeclaredTypeCode(int)">setDeclaredTypeCode</A></B>(int&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the type code for the value.</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/apache/openjpa/meta/ValueMetaData.html#setEmbedded(boolean)">setEmbedded</A></B>(boolean&nbsp;embedded)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This attribute is a hint to the implementation to store this value
 in the same structure as the class, rather than as a separate datastore
 structure.</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/apache/openjpa/meta/ValueMetaData.html#setResolve(int)">setResolve</A></B>(int&nbsp;mode)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Resolve mode for metadata.</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/apache/openjpa/meta/ValueMetaData.html#setResolve(int, boolean)">setResolve</A></B>(int&nbsp;mode,
           boolean&nbsp;on)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Resolve mode for metadata.</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/apache/openjpa/meta/ValueMetaData.html#setSerialized(boolean)">setSerialized</A></B>(boolean&nbsp;serialized)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether this value is serialized when stored.</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/apache/openjpa/meta/ValueMetaData.html#setType(java.lang.Class)">setType</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value class.</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/apache/openjpa/meta/ValueMetaData.html#setTypeCode(int)">setTypeCode</A></B>(int&nbsp;code)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The type code of the value class.</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/apache/openjpa/meta/ValueMetaData.html#setTypeOverride(java.lang.Class)">setTypeOverride</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&nbsp;type)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User-supplied type overriding assumed type based on field.</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/apache/openjpa/meta/ValueMetaData.html#setValueMappedBy(java.lang.String)">setValueMappedBy</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>&nbsp;mapped)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The field that this value shares a mapping with.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.openjpa.meta.MetaDataContext"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface org.apache.openjpa.meta.<A HREF="../../../../org/apache/openjpa/meta/MetaDataContext.html" title="interface in org.apache.openjpa.meta">MetaDataContext</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/openjpa/meta/MetaDataContext.html#getRepository()">getRepository</A></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="CASCADE_NONE"><!-- --></A><H3>
CASCADE_NONE</H3>
<PRE>
static final int <B>CASCADE_NONE</B></PRE>
<DL>
<DD>The operation is not cascaded to this field.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.openjpa.meta.ValueMetaData.CASCADE_NONE">Constant Field Values</A></DL>
</DL>
<HR>

<A NAME="CASCADE_IMMEDIATE"><!-- --></A><H3>
CASCADE_IMMEDIATE</H3>
<PRE>
static final int <B>CASCADE_IMMEDIATE</B></PRE>
<DL>
<DD>The operation is immediately cascaded to this field.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.openjpa.meta.ValueMetaData.CASCADE_IMMEDIATE">Constant Field Values</A></DL>
</DL>
<HR>

<A NAME="CASCADE_AUTO"><!-- --></A><H3>
CASCADE_AUTO</H3>
<PRE>
static final int <B>CASCADE_AUTO</B></PRE>
<DL>
<DD>Use automatic cascade behavior. Persistence-by-reachability,
 delete-dependent, attach-if-detached, etc.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.openjpa.meta.ValueMetaData.CASCADE_AUTO">Constant Field Values</A></DL>
</DL>
<HR>

<A NAME="MAPPED_BY_PK"><!-- --></A><H3>
MAPPED_BY_PK</H3>
<PRE>
static final <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A> <B>MAPPED_BY_PK</B></PRE>
<DL>
<DD>Marker to set on <A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#setValueMappedBy(java.lang.String)"><CODE>setValueMappedBy(java.lang.String)</CODE></A> to denote that the map key
 is mapped by the primary key field of the value.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.openjpa.meta.ValueMetaData.MAPPED_BY_PK">Constant Field Values</A></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="getFieldMetaData()"><!-- --></A><H3>
getFieldMetaData</H3>
<PRE>
<A HREF="../../../../org/apache/openjpa/meta/FieldMetaData.html" title="class in org.apache.openjpa.meta">FieldMetaData</A> <B>getFieldMetaData</B>()</PRE>
<DL>
<DD>Return the owning field for this value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getType()"><!-- --></A><H3>
getType</H3>
<PRE>
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A> <B>getType</B>()</PRE>
<DL>
<DD>The value class.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setType(java.lang.Class)"><!-- --></A><H3>
setType</H3>
<PRE>
void <B>setType</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&nbsp;type)</PRE>
<DL>
<DD>The value class.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getTypeCode()"><!-- --></A><H3>
getTypeCode</H3>
<PRE>
int <B>getTypeCode</B>()</PRE>
<DL>
<DD>The type code of the value class.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setTypeCode(int)"><!-- --></A><H3>
setTypeCode</H3>
<PRE>
void <B>setTypeCode</B>(int&nbsp;code)</PRE>
<DL>
<DD>The type code of the value class.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="isTypePC()"><!-- --></A><H3>
isTypePC</H3>
<PRE>
boolean <B>isTypePC</B>()</PRE>
<DL>
<DD>Whether the type is a persistence capable instance.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getTypeMetaData()"><!-- --></A><H3>
getTypeMetaData</H3>
<PRE>
<A HREF="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</A> <B>getTypeMetaData</B>()</PRE>
<DL>
<DD>The metadata for the value class, if the type is persistent.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getDeclaredType()"><!-- --></A><H3>
getDeclaredType</H3>
<PRE>
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A> <B>getDeclaredType</B>()</PRE>
<DL>
<DD>Return the declared class of the value. This can differ
 from the return value of <A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getType()"><CODE>getType()</CODE></A> if the user indicates
 a different type or the value has an externalizer.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setDeclaredType(java.lang.Class)"><!-- --></A><H3>
setDeclaredType</H3>
<PRE>
void <B>setDeclaredType</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&nbsp;type)</PRE>
<DL>
<DD>Set the declared class of the value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getDeclaredTypeCode()"><!-- --></A><H3>
getDeclaredTypeCode</H3>
<PRE>
int <B>getDeclaredTypeCode</B>()</PRE>
<DL>
<DD>Return the declared type code of the value. This can differ
 from the return value of <A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getTypeCode()"><CODE>getTypeCode()</CODE></A> if the user indicates
 a different type or the value has an externalizer.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setDeclaredTypeCode(int)"><!-- --></A><H3>
setDeclaredTypeCode</H3>
<PRE>
void <B>setDeclaredTypeCode</B>(int&nbsp;type)</PRE>
<DL>
<DD>Set the type code for the value. The type code is usually
 computed automatically, but it can be useful to set it explicitly
 when creating metadatas from scratch.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="isDeclaredTypePC()"><!-- --></A><H3>
isDeclaredTypePC</H3>
<PRE>
boolean <B>isDeclaredTypePC</B>()</PRE>
<DL>
<DD>Whether the type is a persistence capable instance.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getDeclaredTypeMetaData()"><!-- --></A><H3>
getDeclaredTypeMetaData</H3>
<PRE>
<A HREF="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</A> <B>getDeclaredTypeMetaData</B>()</PRE>
<DL>
<DD>Return metadata for the value's class, if the type is persistent.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="isEmbedded()"><!-- --></A><H3>
isEmbedded</H3>
<PRE>
boolean <B>isEmbedded</B>()</PRE>
<DL>
<DD>This attribute is a hint to the implementation to store this value
 in the same structure as the class, rather than as a separate datastore
 structure. Defaults to true if the field is not a collection or map
 or persistence-capable object; defaults to false otherwise.
 Implementations are permitted to ignore this attribute.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setEmbedded(boolean)"><!-- --></A><H3>
setEmbedded</H3>
<PRE>
void <B>setEmbedded</B>(boolean&nbsp;embedded)</PRE>
<DL>
<DD>This attribute is a hint to the implementation to store this value
 in the same structure as the class, rather than as a separate datastore
 structure. Defaults to true if the field is not a collection or map
 or persistence-capable objects; defaults to false otherwise.
 Implementations are permitted to ignore this attribute.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="isEmbeddedPC()"><!-- --></A><H3>
isEmbeddedPC</H3>
<PRE>
boolean <B>isEmbeddedPC</B>()</PRE>
<DL>
<DD>Whether this is an embedded persistence capable value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getEmbeddedMetaData()"><!-- --></A><H3>
getEmbeddedMetaData</H3>
<PRE>
<A HREF="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</A> <B>getEmbeddedMetaData</B>()</PRE>
<DL>
<DD>The embedded class metadata for the value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="addEmbeddedMetaData()"><!-- --></A><H3>
addEmbeddedMetaData</H3>
<PRE>
<A HREF="../../../../org/apache/openjpa/meta/ClassMetaData.html" title="class in org.apache.openjpa.meta">ClassMetaData</A> <B>addEmbeddedMetaData</B>()</PRE>
<DL>
<DD>Add embedded metadata for this value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getCascadeDelete()"><!-- --></A><H3>
getCascadeDelete</H3>
<PRE>
int <B>getCascadeDelete</B>()</PRE>
<DL>
<DD>Cascade behavior for delete operation. Only applies to
 persistence-capable values. Options are:<br />
 <ul>
 <li><code>CASCADE_NONE</code>: No cascades.</li>
 <li><code>CASCADE_IMMEDIATE</code>: Value is deleted immediately when
 the owning object is deleted.</li>
 <li><code>CASCADE_AUTO</code>: Value will be deleted on flush
 if the owning object is deleted or if the value is removed from the
 owning object, and if the value is not assigned to another relation in
 the same transaction.</li>
 </ul>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setCascadeDelete(int)"><!-- --></A><H3>
setCascadeDelete</H3>
<PRE>
void <B>setCascadeDelete</B>(int&nbsp;cascade)</PRE>
<DL>
<DD>Cascade behavior for deletion.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getCascadeDelete()"><CODE>getCascadeDelete()</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="getCascadePersist()"><!-- --></A><H3>
getCascadePersist</H3>
<PRE>
int <B>getCascadePersist</B>()</PRE>
<DL>
<DD>Cascade behavior for persist operation. Only applies to
 persistence-capable values. Options are:<br />
 <ul>
 <li><code>CASCADE_NONE</code>: No cascades. If a transient relation
 is held at flush, an error is thrown.</li>
 <li><code>CASCADE_IMMEDIATE</code>: Value is persisted immediately when
 the owning object is persisted.</li>
 <li><code>CASCADE_AUTO</code>: Value will be persisted on flush.</li>
 </ul>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setCascadePersist(int)"><!-- --></A><H3>
setCascadePersist</H3>
<PRE>
void <B>setCascadePersist</B>(int&nbsp;cascade)</PRE>
<DL>
<DD>Cascade behavior for persist operation.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getCascadePersist()"><CODE>getCascadePersist()</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="getCascadeAttach()"><!-- --></A><H3>
getCascadeAttach</H3>
<PRE>
int <B>getCascadeAttach</B>()</PRE>
<DL>
<DD>Cascade behavior for attach operation. Only applies to
 persistence-capable values. Options are:<br />
 <ul>
 <li><code>CASCADE_NONE</code>: No cascades of attach. Relation
 remains detached.</li>
 <li><code>CASCADE_IMMEDIATE</code>: Value is attached immediately.</li>
 </ul>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setCascadeAttach(int)"><!-- --></A><H3>
setCascadeAttach</H3>
<PRE>
void <B>setCascadeAttach</B>(int&nbsp;cascade)</PRE>
<DL>
<DD>Cascade behavior for attach operation.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getCascadeAttach()"><CODE>getCascadeAttach()</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="getCascadeRefresh()"><!-- --></A><H3>
getCascadeRefresh</H3>
<PRE>
int <B>getCascadeRefresh</B>()</PRE>
<DL>
<DD>Cascade behavior for refresh operation. Only applies to
 persistence-capable values. Options are:<br />
 <ul>
 <li><code>CASCADE_NONE</code>: No cascades of refresh.</li>
 <li><code>CASCADE_IMMEDIATE</code>: Persistent value object is also
 refreshed.</li>
 <li><code>CASCADE_AUTO</code>: Value will be refreshed if it is
 in the current fetch groups.</li>
 </ul>
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setCascadeRefresh(int)"><!-- --></A><H3>
setCascadeRefresh</H3>
<PRE>
void <B>setCascadeRefresh</B>(int&nbsp;cascade)</PRE>
<DL>
<DD>Cascade behavior for refresh operation.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html#getCascadeRefresh()"><CODE>getCascadeRefresh()</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="isSerialized()"><!-- --></A><H3>
isSerialized</H3>
<PRE>
boolean <B>isSerialized</B>()</PRE>
<DL>
<DD>Whether this value is serialized when stored.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setSerialized(boolean)"><!-- --></A><H3>
setSerialized</H3>
<PRE>
void <B>setSerialized</B>(boolean&nbsp;serialized)</PRE>
<DL>
<DD>Whether this value is serialized when stored.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getValueMappedBy()"><!-- --></A><H3>
getValueMappedBy</H3>
<PRE>
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A> <B>getValueMappedBy</B>()</PRE>
<DL>
<DD>The field that this value shares a mapping with. Currently the only
 supported use for a mapped-by value is when a map field key is
 determined by a field of the persistence-capable map value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setValueMappedBy(java.lang.String)"><!-- --></A><H3>
setValueMappedBy</H3>
<PRE>
void <B>setValueMappedBy</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>&nbsp;mapped)</PRE>
<DL>
<DD>The field that this value shares a mapping with. Currently the only
 supported use for a mapped-by value is when a map field key is
 determined by a field of the persistence-capable map value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getValueMappedByMetaData()"><!-- --></A><H3>
getValueMappedByMetaData</H3>
<PRE>
<A HREF="../../../../org/apache/openjpa/meta/FieldMetaData.html" title="class in org.apache.openjpa.meta">FieldMetaData</A> <B>getValueMappedByMetaData</B>()</PRE>
<DL>
<DD>The field that this value shares a mapping with. Currently the only
 supported use for a mapped-by value is when a map field key is
 determined by a field of the persistence-capable map value.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getTypeOverride()"><!-- --></A><H3>
getTypeOverride</H3>
<PRE>
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A> <B>getTypeOverride</B>()</PRE>
<DL>
<DD>User-supplied type overriding assumed type based on field.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setTypeOverride(java.lang.Class)"><!-- --></A><H3>
setTypeOverride</H3>
<PRE>
void <B>setTypeOverride</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html" title="class or interface in java.lang">Class</A>&nbsp;type)</PRE>
<DL>
<DD>User-supplied type overriding assumed type based on field.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getResolve()"><!-- --></A><H3>
getResolve</H3>
<PRE>
int <B>getResolve</B>()</PRE>
<DL>
<DD>Resolve mode for metadata.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setResolve(int)"><!-- --></A><H3>
setResolve</H3>
<PRE>
void <B>setResolve</B>(int&nbsp;mode)</PRE>
<DL>
<DD>Resolve mode for metadata.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setResolve(int, boolean)"><!-- --></A><H3>
setResolve</H3>
<PRE>
void <B>setResolve</B>(int&nbsp;mode,
                boolean&nbsp;on)</PRE>
<DL>
<DD>Resolve mode for metadata.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="resolve(int)"><!-- --></A><H3>
resolve</H3>
<PRE>
boolean <B>resolve</B>(int&nbsp;mode)</PRE>
<DL>
<DD>Resolve and validate metadata. Return true if already resolved.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="copy(org.apache.openjpa.meta.ValueMetaData)"><!-- --></A><H3>
copy</H3>
<PRE>
void <B>copy</B>(<A HREF="../../../../org/apache/openjpa/meta/ValueMetaData.html" title="interface in org.apache.openjpa.meta">ValueMetaData</A>&nbsp;vmd)</PRE>
<DL>
<DD>Copy state from the given value to this one. Do not copy mapping
 information.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</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="class-use/ValueMetaData.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&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-all.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/apache/openjpa/meta/UpdateStrategies.html" title="class in org.apache.openjpa.meta"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/openjpa/meta/ValueMetaDataImpl.html" title="class in org.apache.openjpa.meta"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?org/apache/openjpa/meta/ValueMetaData.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="ValueMetaData.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;CONSTR&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;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Copyright &copy; 2006-2008 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>
