1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<!--NewPage--> 3<HTML> 4<HEAD> 5<!-- Generated by javadoc (build 1.6.0_03) on Mon Apr 12 16:25:48 EDT 2010 --> 6<TITLE> 7TupleSerialKeyCreator (Oracle - Berkeley DB Java API) 8</TITLE> 9 10<META NAME="date" CONTENT="2010-04-12"> 11 12<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../style.css" TITLE="Style"> 13 14<SCRIPT type="text/javascript"> 15function windowTitle() 16{ 17 if (location.href.indexOf('is-external=true') == -1) { 18 parent.document.title="TupleSerialKeyCreator (Oracle - Berkeley DB Java API)"; 19 } 20} 21</SCRIPT> 22<NOSCRIPT> 23</NOSCRIPT> 24 25</HEAD> 26 27<BODY BGCOLOR="white" onload="windowTitle();"> 28<HR> 29 30 31<!-- ========= START OF TOP NAVBAR ======= --> 32<A NAME="navbar_top"><!-- --></A> 33<A HREF="#skip-navbar_top" title="Skip navigation links"></A> 34<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> 35<TR> 36<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> 37<A NAME="navbar_top_firstrow"><!-- --></A> 38<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> 39 <TR ALIGN="center" VALIGN="top"> 40 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> 41 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> 42 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> 43 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/TupleSerialKeyCreator.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD> 44 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> 45 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> 46 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> 47 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> 48 </TR> 49</TABLE> 50</TD> 51<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> 52<b>Berkeley DB</b><br><font size="-1"> version 4.8.30</font></EM> 53</TD> 54</TR> 55 56<TR> 57<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> 58 <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialBinding.html" title="class in com.sleepycat.bind.serial"><B>PREV CLASS</B></A> 59 <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialMarshalledBinding.html" title="class in com.sleepycat.bind.serial"><B>NEXT CLASS</B></A></FONT></TD> 60<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> 61 <A HREF="../../../../index.html?com/sleepycat/bind/serial/TupleSerialKeyCreator.html" target="_top"><B>FRAMES</B></A> 62 <A HREF="TupleSerialKeyCreator.html" target="_top"><B>NO FRAMES</B></A> 63 <SCRIPT type="text/javascript"> 64 <!-- 65 if(window==top) { 66 document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); 67 } 68 //--> 69</SCRIPT> 70<NOSCRIPT> 71 <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> 72</NOSCRIPT> 73 74 75</FONT></TD> 76</TR> 77<TR> 78<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> 79 SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> 80<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> 81DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> 82</TR> 83</TABLE> 84<A NAME="skip-navbar_top"></A> 85<!-- ========= END OF TOP NAVBAR ========= --> 86 87<HR> 88<!-- ======== START OF CLASS DATA ======== --> 89<H2> 90<FONT SIZE="-1"> 91com.sleepycat.bind.serial</FONT> 92<BR> 93Class TupleSerialKeyCreator<D></H2> 94<PRE> 95<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A> 96 <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html" title="class in com.sleepycat.bind.tuple">com.sleepycat.bind.tuple.TupleBase</A> 97 <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.sleepycat.bind.serial.TupleSerialKeyCreator<D></B> 98</PRE> 99<DL> 100<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../com/sleepycat/db/ForeignKeyNullifier.html" title="interface in com.sleepycat.db">ForeignKeyNullifier</A>, <A HREF="../../../../com/sleepycat/db/SecondaryKeyCreator.html" title="interface in com.sleepycat.db">SecondaryKeyCreator</A></DD> 101</DL> 102<DL> 103<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../com/sleepycat/bind/serial/TupleSerialMarshalledKeyCreator.html" title="class in com.sleepycat.bind.serial">TupleSerialMarshalledKeyCreator</A></DD> 104</DL> 105<HR> 106<DL> 107<DT><PRE>public abstract class <B>TupleSerialKeyCreator<D></B><DT>extends <A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html" title="class in com.sleepycat.bind.tuple">TupleBase</A><DT>implements <A HREF="../../../../com/sleepycat/db/SecondaryKeyCreator.html" title="interface in com.sleepycat.db">SecondaryKeyCreator</A>, <A HREF="../../../../com/sleepycat/db/ForeignKeyNullifier.html" title="interface in com.sleepycat.db">ForeignKeyNullifier</A></DL> 108</PRE> 109 110<P> 111A abstract key creator that uses a tuple key and a serial data entry. This 112 class takes care of serializing and deserializing the data entry, and 113 converting the key entry to/from <A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html" title="class in com.sleepycat.bind.tuple"><CODE>TupleInput</CODE></A> and <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html" title="class in com.sleepycat.bind.tuple"><CODE>TupleOutput</CODE></A> 114 objects. 115 The following abstract method must be implemented by a concrete subclass 116 to create the index key using these objects 117 <ul> 118 <li> <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#createSecondaryKey(com.sleepycat.bind.tuple.TupleInput, D, com.sleepycat.bind.tuple.TupleOutput)"><CODE>createSecondaryKey(TupleInput,Object,TupleOutput)</CODE></A> </li> 119 </ul> 120 <p>If <A HREF="../../../../com/sleepycat/db/ForeignKeyDeleteAction.html#NULLIFY"><CODE>ForeignKeyDeleteAction.NULLIFY</CODE></A> was 121 specified when opening the secondary database, the following method must be 122 overridden to nullify the foreign index key. If NULLIFY was not specified, 123 this method need not be overridden.</p> 124 <ul> 125 <li> <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#nullifyForeignKey(D)"><CODE>nullifyForeignKey(Object)</CODE></A> </li> 126 </ul> 127<P> 128 129<P> 130<DL> 131<DT><B>See Also:</B><DD><a href="SerialBinding.html#evolution">Class Evolution</a></DL> 132<HR> 133 134<P> 135<!-- =========== FIELD SUMMARY =========== --> 136 137<A NAME="field_summary"><!-- --></A> 138<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> 139<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> 140<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> 141<B>Field Summary</B></FONT></TH> 142</TR> 143<TR BGCOLOR="white" CLASS="TableRowColor"> 144<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> 145<CODE>protected <A HREF="../../../../com/sleepycat/bind/serial/SerialBinding.html" title="class in com.sleepycat.bind.serial">SerialBinding</A><<A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A>></CODE></FONT></TD> 146<TD><CODE><B><A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#dataBinding">dataBinding</A></B></CODE> 147 148<BR> 149 </TD> 150</TR> 151</TABLE> 152 153<!-- ======== CONSTRUCTOR SUMMARY ======== --> 154 155<A NAME="constructor_summary"><!-- --></A> 156<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> 157<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> 158<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> 159<B>Constructor Summary</B></FONT></TH> 160</TR> 161<TR BGCOLOR="white" CLASS="TableRowColor"> 162<TD><CODE><B><A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#TupleSerialKeyCreator(com.sleepycat.bind.serial.ClassCatalog, java.lang.Class)">TupleSerialKeyCreator</A></B>(<A HREF="../../../../com/sleepycat/bind/serial/ClassCatalog.html" title="interface in com.sleepycat.bind.serial">ClassCatalog</A> classCatalog, 163 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A><<A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A>> dataClass)</CODE> 164 165<BR> 166 Creates a tuple-serial key creator.</TD> 167</TR> 168<TR BGCOLOR="white" CLASS="TableRowColor"> 169<TD><CODE><B><A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#TupleSerialKeyCreator(com.sleepycat.bind.serial.SerialBinding)">TupleSerialKeyCreator</A></B>(<A HREF="../../../../com/sleepycat/bind/serial/SerialBinding.html" title="class in com.sleepycat.bind.serial">SerialBinding</A><<A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A>> dataBinding)</CODE> 170 171<BR> 172 Creates a tuple-serial key creator.</TD> 173</TR> 174</TABLE> 175 176<!-- ========== METHOD SUMMARY =========== --> 177 178<A NAME="method_summary"><!-- --></A> 179<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> 180<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> 181<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> 182<B>Method Summary</B></FONT></TH> 183</TR> 184<TR BGCOLOR="white" CLASS="TableRowColor"> 185<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> 186<CODE> boolean</CODE></FONT></TD> 187<TD><CODE><B><A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#createSecondaryKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry)">createSecondaryKey</A></B>(<A HREF="../../../../com/sleepycat/db/SecondaryDatabase.html" title="class in com.sleepycat.db">SecondaryDatabase</A> db, 188 <A HREF="../../../../com/sleepycat/db/DatabaseEntry.html" title="class in com.sleepycat.db">DatabaseEntry</A> primaryKeyEntry, 189 <A HREF="../../../../com/sleepycat/db/DatabaseEntry.html" title="class in com.sleepycat.db">DatabaseEntry</A> dataEntry, 190 <A HREF="../../../../com/sleepycat/db/DatabaseEntry.html" title="class in com.sleepycat.db">DatabaseEntry</A> indexKeyEntry)</CODE> 191 192<BR> 193 Creates a secondary key entry, given a primary key and data entry.</TD> 194</TR> 195<TR BGCOLOR="white" CLASS="TableRowColor"> 196<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> 197<CODE>abstract boolean</CODE></FONT></TD> 198<TD><CODE><B><A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#createSecondaryKey(com.sleepycat.bind.tuple.TupleInput, D, com.sleepycat.bind.tuple.TupleOutput)">createSecondaryKey</A></B>(<A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html" title="class in com.sleepycat.bind.tuple">TupleInput</A> primaryKeyInput, 199 <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A> dataInput, 200 <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html" title="class in com.sleepycat.bind.tuple">TupleOutput</A> indexKeyOutput)</CODE> 201 202<BR> 203 Creates the index key entry from primary key tuple entry and 204 deserialized data entry.</TD> 205</TR> 206<TR BGCOLOR="white" CLASS="TableRowColor"> 207<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> 208<CODE> <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A></CODE></FONT></TD> 209<TD><CODE><B><A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#nullifyForeignKey(D)">nullifyForeignKey</A></B>(<A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A> data)</CODE> 210 211<BR> 212 Clears the index key in the deserialized data entry.</TD> 213</TR> 214<TR BGCOLOR="white" CLASS="TableRowColor"> 215<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> 216<CODE> boolean</CODE></FONT></TD> 217<TD><CODE><B><A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#nullifyForeignKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry)">nullifyForeignKey</A></B>(<A HREF="../../../../com/sleepycat/db/SecondaryDatabase.html" title="class in com.sleepycat.db">SecondaryDatabase</A> db, 218 <A HREF="../../../../com/sleepycat/db/DatabaseEntry.html" title="class in com.sleepycat.db">DatabaseEntry</A> dataEntry)</CODE> 219 220<BR> 221 </TD> 222</TR> 223</TABLE> 224 <A NAME="methods_inherited_from_class_com.sleepycat.bind.tuple.TupleBase"><!-- --></A> 225<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> 226<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> 227<TH ALIGN="left"><B>Methods inherited from class com.sleepycat.bind.tuple.<A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html" title="class in com.sleepycat.bind.tuple">TupleBase</A></B></TH> 228</TR> 229<TR BGCOLOR="white" CLASS="TableRowColor"> 230<TD><CODE><A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html#entryToInput(com.sleepycat.db.DatabaseEntry)">entryToInput</A>, <A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html#getTupleBufferSize()">getTupleBufferSize</A>, <A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html#getTupleOutput(E)">getTupleOutput</A>, <A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html#inputToEntry(com.sleepycat.bind.tuple.TupleInput, com.sleepycat.db.DatabaseEntry)">inputToEntry</A>, <A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html#newOutput()">newOutput</A>, <A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html#newOutput(byte[])">newOutput</A>, <A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html#outputToEntry(com.sleepycat.bind.tuple.TupleOutput, com.sleepycat.db.DatabaseEntry)">outputToEntry</A>, <A HREF="../../../../com/sleepycat/bind/tuple/TupleBase.html#setTupleBufferSize(int)">setTupleBufferSize</A></CODE></TD> 231</TR> 232</TABLE> 233 <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A> 234<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> 235<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> 236<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH> 237</TR> 238<TR BGCOLOR="white" CLASS="TableRowColor"> 239<TD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD> 240</TR> 241</TABLE> 242 243<P> 244 245<!-- ============ FIELD DETAIL =========== --> 246 247<A NAME="field_detail"><!-- --></A> 248<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> 249<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> 250<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> 251<B>Field Detail</B></FONT></TH> 252</TR> 253</TABLE> 254 255<A NAME="dataBinding"><!-- --></A><H3> 256dataBinding</H3> 257<PRE> 258protected <A HREF="../../../../com/sleepycat/bind/serial/SerialBinding.html" title="class in com.sleepycat.bind.serial">SerialBinding</A><<A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A>> <B>dataBinding</B></PRE> 259<DL> 260<DL> 261</DL> 262</DL> 263 264<!-- ========= CONSTRUCTOR DETAIL ======== --> 265 266<A NAME="constructor_detail"><!-- --></A> 267<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> 268<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> 269<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> 270<B>Constructor Detail</B></FONT></TH> 271</TR> 272</TABLE> 273 274<A NAME="TupleSerialKeyCreator(com.sleepycat.bind.serial.ClassCatalog, java.lang.Class)"><!-- --></A><H3> 275TupleSerialKeyCreator</H3> 276<PRE> 277public <B>TupleSerialKeyCreator</B>(<A HREF="../../../../com/sleepycat/bind/serial/ClassCatalog.html" title="interface in com.sleepycat.bind.serial">ClassCatalog</A> classCatalog, 278 <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A><<A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A>> dataClass)</PRE> 279<DL> 280<DD>Creates a tuple-serial key creator. 281<P> 282<DL> 283<DT><B>Parameters:</B><DD><CODE>classCatalog</CODE> - is the catalog to hold shared class information and 284 for a database should be a <A HREF="../../../../com/sleepycat/bind/serial/StoredClassCatalog.html" title="class in com.sleepycat.bind.serial"><CODE>StoredClassCatalog</CODE></A>.<DD><CODE>dataClass</CODE> - is the data base class.</DL> 285</DL> 286<HR> 287 288<A NAME="TupleSerialKeyCreator(com.sleepycat.bind.serial.SerialBinding)"><!-- --></A><H3> 289TupleSerialKeyCreator</H3> 290<PRE> 291public <B>TupleSerialKeyCreator</B>(<A HREF="../../../../com/sleepycat/bind/serial/SerialBinding.html" title="class in com.sleepycat.bind.serial">SerialBinding</A><<A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A>> dataBinding)</PRE> 292<DL> 293<DD>Creates a tuple-serial key creator. 294<P> 295<DL> 296<DT><B>Parameters:</B><DD><CODE>dataBinding</CODE> - is the data binding.</DL> 297</DL> 298 299<!-- ============ METHOD DETAIL ========== --> 300 301<A NAME="method_detail"><!-- --></A> 302<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> 303<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> 304<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> 305<B>Method Detail</B></FONT></TH> 306</TR> 307</TABLE> 308 309<A NAME="createSecondaryKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry)"><!-- --></A><H3> 310createSecondaryKey</H3> 311<PRE> 312public boolean <B>createSecondaryKey</B>(<A HREF="../../../../com/sleepycat/db/SecondaryDatabase.html" title="class in com.sleepycat.db">SecondaryDatabase</A> db, 313 <A HREF="../../../../com/sleepycat/db/DatabaseEntry.html" title="class in com.sleepycat.db">DatabaseEntry</A> primaryKeyEntry, 314 <A HREF="../../../../com/sleepycat/db/DatabaseEntry.html" title="class in com.sleepycat.db">DatabaseEntry</A> dataEntry, 315 <A HREF="../../../../com/sleepycat/db/DatabaseEntry.html" title="class in com.sleepycat.db">DatabaseEntry</A> indexKeyEntry)</PRE> 316<DL> 317<DD><B>Description copied from interface: <CODE><A HREF="../../../../com/sleepycat/db/SecondaryKeyCreator.html#createSecondaryKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry)">SecondaryKeyCreator</A></CODE></B></DD> 318<DD>Creates a secondary key entry, given a primary key and data entry. 319 <p> 320 A secondary key may be derived from the primary key, primary data, or a 321 combination of the primary key and data. For secondary keys that are 322 optional, the key creator method may return false and the key/data pair 323 will not be indexed. To ensure the integrity of a secondary database the 324 key creator method must always return the same result for a given set of 325 input parameters. 326 <p> 327<P> 328<DD><DL> 329<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/sleepycat/db/SecondaryKeyCreator.html#createSecondaryKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry)">createSecondaryKey</A></CODE> in interface <CODE><A HREF="../../../../com/sleepycat/db/SecondaryKeyCreator.html" title="interface in com.sleepycat.db">SecondaryKeyCreator</A></CODE></DL> 330</DD> 331<DD><DL> 332<DT><B>Parameters:</B><DD><CODE>db</CODE> - the database to which the secondary key will be added. 333 This parameter is passed for informational purposes but is not commonly 334 used. 335 <p><DD><CODE>primaryKeyEntry</CODE> - the primary key entry. This parameter must not be modified 336 by this method. 337 <p><DD><CODE>dataEntry</CODE> - the primary data entry. This parameter must not be modified 338 by this method. 339 <p><DD><CODE>indexKeyEntry</CODE> - the secondary key created by this method. 340 <p> 341<DT><B>Returns:</B><DD>true if a key was created, or false to indicate that the key is 342 not present. 343 <p></DL> 344</DD> 345</DL> 346<HR> 347 348<A NAME="nullifyForeignKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry)"><!-- --></A><H3> 349nullifyForeignKey</H3> 350<PRE> 351public boolean <B>nullifyForeignKey</B>(<A HREF="../../../../com/sleepycat/db/SecondaryDatabase.html" title="class in com.sleepycat.db">SecondaryDatabase</A> db, 352 <A HREF="../../../../com/sleepycat/db/DatabaseEntry.html" title="class in com.sleepycat.db">DatabaseEntry</A> dataEntry)</PRE> 353<DL> 354<DD><DL> 355<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/sleepycat/db/ForeignKeyNullifier.html#nullifyForeignKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry)">nullifyForeignKey</A></CODE> in interface <CODE><A HREF="../../../../com/sleepycat/db/ForeignKeyNullifier.html" title="interface in com.sleepycat.db">ForeignKeyNullifier</A></CODE></DL> 356</DD> 357<DD><DL> 358</DL> 359</DD> 360</DL> 361<HR> 362 363<A NAME="createSecondaryKey(com.sleepycat.bind.tuple.TupleInput,java.lang.Object,com.sleepycat.bind.tuple.TupleOutput)"><!-- --></A><A NAME="createSecondaryKey(com.sleepycat.bind.tuple.TupleInput, D, com.sleepycat.bind.tuple.TupleOutput)"><!-- --></A><H3> 364createSecondaryKey</H3> 365<PRE> 366public abstract boolean <B>createSecondaryKey</B>(<A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html" title="class in com.sleepycat.bind.tuple">TupleInput</A> primaryKeyInput, 367 <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A> dataInput, 368 <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html" title="class in com.sleepycat.bind.tuple">TupleOutput</A> indexKeyOutput)</PRE> 369<DL> 370<DD>Creates the index key entry from primary key tuple entry and 371 deserialized data entry. 372<P> 373<DD><DL> 374</DL> 375</DD> 376<DD><DL> 377<DT><B>Parameters:</B><DD><CODE>primaryKeyInput</CODE> - is the <A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html" title="class in com.sleepycat.bind.tuple"><CODE>TupleInput</CODE></A> for the primary key 378 entry, or null if no primary key entry is used to construct the index 379 key.<DD><CODE>dataInput</CODE> - is the deserialized data entry, or null if no data 380 entry is used to construct the index key.<DD><CODE>indexKeyOutput</CODE> - is the destination index key tuple. For index 381 keys which are optionally present, no tuple entry should be output to 382 indicate that the key is not present or null. 383<DT><B>Returns:</B><DD>true if a key was created, or false to indicate that the key is 384 not present.</DL> 385</DD> 386</DL> 387<HR> 388 389<A NAME="nullifyForeignKey(java.lang.Object)"><!-- --></A><A NAME="nullifyForeignKey(D)"><!-- --></A><H3> 390nullifyForeignKey</H3> 391<PRE> 392public <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A> <B>nullifyForeignKey</B>(<A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html" title="type parameter in TupleSerialKeyCreator">D</A> data)</PRE> 393<DL> 394<DD>Clears the index key in the deserialized data entry. 395 396 <p>On entry the data parameter contains the index key to be cleared. It 397 should be changed by this method such that <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialKeyCreator.html#createSecondaryKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry)"><CODE>createSecondaryKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry)</CODE></A> 398 will return false. Other fields in the data object should remain 399 unchanged.</p> 400<P> 401<DD><DL> 402</DL> 403</DD> 404<DD><DL> 405<DT><B>Parameters:</B><DD><CODE>data</CODE> - is the source and destination deserialized data 406 entry. 407<DT><B>Returns:</B><DD>the destination data object, or null to indicate that the 408 key is not present and no change is necessary. The data returned may 409 be the same object passed as the data parameter or a newly created 410 object.</DL> 411</DD> 412</DL> 413<!-- ========= END OF CLASS DATA ========= --> 414<HR> 415 416 417<!-- ======= START OF BOTTOM NAVBAR ====== --> 418<A NAME="navbar_bottom"><!-- --></A> 419<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A> 420<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> 421<TR> 422<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> 423<A NAME="navbar_bottom_firstrow"><!-- --></A> 424<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> 425 <TR ALIGN="center" VALIGN="top"> 426 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> 427 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> 428 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> 429 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/TupleSerialKeyCreator.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD> 430 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> 431 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> 432 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> 433 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> 434 </TR> 435</TABLE> 436</TD> 437<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> 438<b>Berkeley DB</b><br><font size="-1"> version 4.8.30</font></EM> 439</TD> 440</TR> 441 442<TR> 443<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> 444 <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialBinding.html" title="class in com.sleepycat.bind.serial"><B>PREV CLASS</B></A> 445 <A HREF="../../../../com/sleepycat/bind/serial/TupleSerialMarshalledBinding.html" title="class in com.sleepycat.bind.serial"><B>NEXT CLASS</B></A></FONT></TD> 446<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> 447 <A HREF="../../../../index.html?com/sleepycat/bind/serial/TupleSerialKeyCreator.html" target="_top"><B>FRAMES</B></A> 448 <A HREF="TupleSerialKeyCreator.html" target="_top"><B>NO FRAMES</B></A> 449 <SCRIPT type="text/javascript"> 450 <!-- 451 if(window==top) { 452 document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); 453 } 454 //--> 455</SCRIPT> 456<NOSCRIPT> 457 <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> 458</NOSCRIPT> 459 460 461</FONT></TD> 462</TR> 463<TR> 464<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> 465 SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> 466<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> 467DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> 468</TR> 469</TABLE> 470<A NAME="skip-navbar_bottom"></A> 471<!-- ======== END OF BOTTOM NAVBAR ======= --> 472 473<HR> 474<font size=1>Copyright (c) 1996-2009 Oracle. All rights reserved.</font> 475</BODY> 476</HTML> 477