<!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.6.0_01) on Tue Mar 18 12:43:13 PDT 2008 -->
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<TITLE>
Uses of Interface javax.jdo.spi.PersistenceCapable (JDO2 API Legacy 2.1)
</TITLE>

<META NAME="date" CONTENT="2008-03-18">

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

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Uses of Interface javax.jdo.spi.PersistenceCapable (JDO2 API Legacy 2.1)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= 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="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</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-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;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?javax/jdo/spi/\class-usePersistenceCapable.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="PersistenceCapable.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>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<CENTER>
<H2>
<B>Uses of Interface<br>javax.jdo.spi.PersistenceCapable</B></H2>
</CENTER>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
Packages that use <A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><A HREF="#javax.jdo.spi"><B>javax.jdo.spi</B></A></TD>
<TD>This package contains the interfaces and classes used by JDO implementations.&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<P>
<A NAME="javax.jdo.spi"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
Uses of <A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A> in <A HREF="../../../../javax/jdo/spi/package-summary.html">javax.jdo.spi</A></FONT></TH>
</TR>
</TABLE>
&nbsp;
<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../javax/jdo/spi/package-summary.html">javax.jdo.spi</A> that return <A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A></CODE></FONT></TD>
<TD><CODE><B>PersistenceCapable.</B><B><A HREF="../../../../javax/jdo/spi/PersistenceCapable.html#jdoNewInstance(javax.jdo.spi.StateManager)">jdoNewInstance</A></B>(<A HREF="../../../../javax/jdo/spi/StateManager.html" title="interface in javax.jdo.spi">StateManager</A>&nbsp;sm)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a new instance of this class, with the jdoStateManager set to the
 parameter, and jdoFlags set to LOAD_REQUIRED.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A></CODE></FONT></TD>
<TD><CODE><B>PersistenceCapable.</B><B><A HREF="../../../../javax/jdo/spi/PersistenceCapable.html#jdoNewInstance(javax.jdo.spi.StateManager, java.lang.Object)">jdoNewInstance</A></B>(<A HREF="../../../../javax/jdo/spi/StateManager.html" title="interface in javax.jdo.spi">StateManager</A>&nbsp;sm,
               java.lang.Object&nbsp;oid)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a new instance of this class, with the jdoStateManager set to the
 parameter, key fields initialized to the values in the oid, and jdoFlags
 set to LOAD_REQUIRED.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A></CODE></FONT></TD>
<TD><CODE><B>JDOImplHelper.</B><B><A HREF="../../../../javax/jdo/spi/JDOImplHelper.html#newInstance(java.lang.Class, javax.jdo.spi.StateManager)">newInstance</A></B>(java.lang.Class&nbsp;pcClass,
            <A HREF="../../../../javax/jdo/spi/StateManager.html" title="interface in javax.jdo.spi">StateManager</A>&nbsp;sm)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a new instance of the class and assign its 
 <code>jdoStateManager</code>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A></CODE></FONT></TD>
<TD><CODE><B>JDOImplHelper.</B><B><A HREF="../../../../javax/jdo/spi/JDOImplHelper.html#newInstance(java.lang.Class, javax.jdo.spi.StateManager, java.lang.Object)">newInstance</A></B>(java.lang.Class&nbsp;pcClass,
            <A HREF="../../../../javax/jdo/spi/StateManager.html" title="interface in javax.jdo.spi">StateManager</A>&nbsp;sm,
            java.lang.Object&nbsp;oid)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a new instance of the class and assign its 
 <code>jdoStateManager</code> and key values from the ObjectId.</TD>
</TR>
</TABLE>
&nbsp;
<P>

<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../javax/jdo/spi/package-summary.html">javax.jdo.spi</A> with parameters of type <A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A></FONT></TH>
</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getBooleanField(javax.jdo.spi.PersistenceCapable, int, boolean)">getBooleanField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                int&nbsp;field,
                boolean&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;byte</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getByteField(javax.jdo.spi.PersistenceCapable, int, byte)">getByteField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
             int&nbsp;field,
             byte&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;char</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getCharField(javax.jdo.spi.PersistenceCapable, int, char)">getCharField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
             int&nbsp;field,
             char&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;double</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getDoubleField(javax.jdo.spi.PersistenceCapable, int, double)">getDoubleField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
               int&nbsp;field,
               double&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;float</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getFloatField(javax.jdo.spi.PersistenceCapable, int, float)">getFloatField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
              int&nbsp;field,
              float&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getIntField(javax.jdo.spi.PersistenceCapable, int, int)">getIntField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
            int&nbsp;field,
            int&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getLongField(javax.jdo.spi.PersistenceCapable, int, long)">getLongField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
             int&nbsp;field,
             long&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getObjectField(javax.jdo.spi.PersistenceCapable, int, java.lang.Object)">getObjectField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
               int&nbsp;field,
               java.lang.Object&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getObjectId(javax.jdo.spi.PersistenceCapable)">getObjectId</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the object representing the JDO identity 
 of the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../javax/jdo/PersistenceManager.html" title="interface in javax.jdo">PersistenceManager</A></CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getPersistenceManager(javax.jdo.spi.PersistenceCapable)">getPersistenceManager</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the <code>PersistenceManager</code> that owns this instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;short</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getShortField(javax.jdo.spi.PersistenceCapable, int, short)">getShortField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
              int&nbsp;field,
              short&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getStringField(javax.jdo.spi.PersistenceCapable, int, java.lang.String)">getStringField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
               int&nbsp;field,
               java.lang.String&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the value for the field.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getTransactionalObjectId(javax.jdo.spi.PersistenceCapable)">getTransactionalObjectId</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the object representing the JDO identity 
 of the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#getVersion(javax.jdo.spi.PersistenceCapable)">getVersion</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the object representing the version 
 of the calling 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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#isDeleted(javax.jdo.spi.PersistenceCapable)">isDeleted</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests whether this object has been deleted.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#isDirty(javax.jdo.spi.PersistenceCapable)">isDirty</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests whether this object is dirty.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#isLoaded(javax.jdo.spi.PersistenceCapable, int)">isLoaded</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
         int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return <code>true</code> if the field is cached in the calling
 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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#isNew(javax.jdo.spi.PersistenceCapable)">isNew</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests whether this object has been newly made persistent.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#isPersistent(javax.jdo.spi.PersistenceCapable)">isPersistent</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests whether this object is persistent.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#isTransactional(javax.jdo.spi.PersistenceCapable)">isTransactional</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests whether this object is transactional.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#makeDirty(javax.jdo.spi.PersistenceCapable, java.lang.String)">makeDirty</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
          java.lang.String&nbsp;fieldName)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the associated <code>PersistenceCapable</code> field dirty.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#preSerialize(javax.jdo.spi.PersistenceCapable)">preSerialize</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Guarantee that the serializable transactional and persistent fields
 are loaded into the instance.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedBooleanField(javax.jdo.spi.PersistenceCapable, int, boolean)">providedBooleanField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                     int&nbsp;field,
                     boolean&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedByteField(javax.jdo.spi.PersistenceCapable, int, byte)">providedByteField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                  int&nbsp;field,
                  byte&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedCharField(javax.jdo.spi.PersistenceCapable, int, char)">providedCharField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                  int&nbsp;field,
                  char&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedDoubleField(javax.jdo.spi.PersistenceCapable, int, double)">providedDoubleField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                    int&nbsp;field,
                    double&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedFloatField(javax.jdo.spi.PersistenceCapable, int, float)">providedFloatField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                   int&nbsp;field,
                   float&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedIntField(javax.jdo.spi.PersistenceCapable, int, int)">providedIntField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                 int&nbsp;field,
                 int&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedLongField(javax.jdo.spi.PersistenceCapable, int, long)">providedLongField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                  int&nbsp;field,
                  long&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedObjectField(javax.jdo.spi.PersistenceCapable, int, java.lang.Object)">providedObjectField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                    int&nbsp;field,
                    java.lang.Object&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedShortField(javax.jdo.spi.PersistenceCapable, int, short)">providedShortField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                   int&nbsp;field,
                   short&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#providedStringField(javax.jdo.spi.PersistenceCapable, int, java.lang.String)">providedStringField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                    int&nbsp;field,
                    java.lang.String&nbsp;currentValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The value of the field requested to be provided to the 
 <code>StateManager</code>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B>JDOImplHelper.</B><B><A HREF="../../../../javax/jdo/spi/JDOImplHelper.html#registerClass(java.lang.Class, java.lang.String[], java.lang.Class[], byte[], java.lang.Class, javax.jdo.spi.PersistenceCapable)">registerClass</A></B>(java.lang.Class&nbsp;pcClass,
              java.lang.String[]&nbsp;fieldNames,
              java.lang.Class[]&nbsp;fieldTypes,
              byte[]&nbsp;fieldFlags,
              java.lang.Class&nbsp;persistenceCapableSuperclass,
              <A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Register metadata by class.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingBooleanField(javax.jdo.spi.PersistenceCapable, int)">replacingBooleanField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                      int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;byte</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingByteField(javax.jdo.spi.PersistenceCapable, int)">replacingByteField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                   int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;char</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingCharField(javax.jdo.spi.PersistenceCapable, int)">replacingCharField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                   int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;double</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingDoubleField(javax.jdo.spi.PersistenceCapable, int)">replacingDoubleField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                     int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;byte</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingFlags(javax.jdo.spi.PersistenceCapable)">replacingFlags</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The owning <code>StateManager</code> uses this method to supply the 
 value of the flags to the <code>PersistenceCapable</code> instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;float</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingFloatField(javax.jdo.spi.PersistenceCapable, int)">replacingFloatField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                    int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingIntField(javax.jdo.spi.PersistenceCapable, int)">replacingIntField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                  int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingLongField(javax.jdo.spi.PersistenceCapable, int)">replacingLongField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                   int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingObjectField(javax.jdo.spi.PersistenceCapable, int)">replacingObjectField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                     int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;short</CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingShortField(javax.jdo.spi.PersistenceCapable, int)">replacingShortField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                    int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../javax/jdo/spi/StateManager.html" title="interface in javax.jdo.spi">StateManager</A></CODE></FONT></TD>
<TD><CODE><B>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingStateManager(javax.jdo.spi.PersistenceCapable, javax.jdo.spi.StateManager)">replacingStateManager</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                      <A HREF="../../../../javax/jdo/spi/StateManager.html" title="interface in javax.jdo.spi">StateManager</A>&nbsp;sm)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replace the current value of <code>jdoStateManager</code>.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#replacingStringField(javax.jdo.spi.PersistenceCapable, int)">replacingStringField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                     int&nbsp;field)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The replacement value of the field in the calling instance.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setBooleanField(javax.jdo.spi.PersistenceCapable, int, boolean, boolean)">setBooleanField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
                int&nbsp;field,
                boolean&nbsp;currentValue,
                boolean&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setByteField(javax.jdo.spi.PersistenceCapable, int, byte, byte)">setByteField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
             int&nbsp;field,
             byte&nbsp;currentValue,
             byte&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setCharField(javax.jdo.spi.PersistenceCapable, int, char, char)">setCharField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
             int&nbsp;field,
             char&nbsp;currentValue,
             char&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setDoubleField(javax.jdo.spi.PersistenceCapable, int, double, double)">setDoubleField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
               int&nbsp;field,
               double&nbsp;currentValue,
               double&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setFloatField(javax.jdo.spi.PersistenceCapable, int, float, float)">setFloatField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
              int&nbsp;field,
              float&nbsp;currentValue,
              float&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setIntField(javax.jdo.spi.PersistenceCapable, int, int, int)">setIntField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
            int&nbsp;field,
            int&nbsp;currentValue,
            int&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setLongField(javax.jdo.spi.PersistenceCapable, int, long, long)">setLongField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
             int&nbsp;field,
             long&nbsp;currentValue,
             long&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setObjectField(javax.jdo.spi.PersistenceCapable, int, java.lang.Object, java.lang.Object)">setObjectField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
               int&nbsp;field,
               java.lang.Object&nbsp;currentValue,
               java.lang.Object&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setShortField(javax.jdo.spi.PersistenceCapable, int, short, short)">setShortField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
              int&nbsp;field,
              short&nbsp;currentValue,
              short&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</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>StateManager.</B><B><A HREF="../../../../javax/jdo/spi/StateManager.html#setStringField(javax.jdo.spi.PersistenceCapable, int, java.lang.String, java.lang.String)">setStringField</A></B>(<A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi">PersistenceCapable</A>&nbsp;pc,
               int&nbsp;field,
               java.lang.String&nbsp;currentValue,
               java.lang.String&nbsp;newValue)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Mark the field as modified by the user.</TD>
</TR>
</TABLE>
&nbsp;
<P>
<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="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../javax/jdo/spi/PersistenceCapable.html" title="interface in javax.jdo.spi"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</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-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;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?javax/jdo/spi/\class-usePersistenceCapable.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="PersistenceCapable.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>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Copyright &copy; 2005-2008 Apache Software Foundation. All Rights Reserved.
</BODY>
</HTML>
