• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src/router/db-4.8.30/docs/java/com/sleepycat/db/
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:47 EDT 2010 -->
6<TITLE>
7SecondaryConfig (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="SecondaryConfig (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>&nbsp;</TD>
41  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
42  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
43  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/SecondaryConfig.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
44  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
45  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
46  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
47  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</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&nbsp;<A HREF="../../../com/sleepycat/db/RunRecoveryException.html" title="class in com.sleepycat.db"><B>PREV CLASS</B></A>&nbsp;
59&nbsp;<A HREF="../../../com/sleepycat/db/SecondaryCursor.html" title="class in com.sleepycat.db"><B>NEXT CLASS</B></A></FONT></TD>
60<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
61  <A HREF="../../../index.html?com/sleepycat/db/SecondaryConfig.html" target="_top"><B>FRAMES</B></A>  &nbsp;
62&nbsp;<A HREF="SecondaryConfig.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
63&nbsp;<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:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
80<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
81DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
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.db</FONT>
92<BR>
93Class SecondaryConfig</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/db/DatabaseConfig.html" title="class in com.sleepycat.db">com.sleepycat.db.DatabaseConfig</A>
97      <IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.sleepycat.db.SecondaryConfig</B>
98</PRE>
99<DL>
100<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Cloneable.html?is-external=true" title="class or interface in java.lang">Cloneable</A></DD>
101</DL>
102<HR>
103<DL>
104<DT><PRE>public class <B>SecondaryConfig</B><DT>extends <A HREF="../../../com/sleepycat/db/DatabaseConfig.html" title="class in com.sleepycat.db">DatabaseConfig</A><DT>implements <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Cloneable.html?is-external=true" title="class or interface in java.lang">Cloneable</A></DL>
105</PRE>
106
107<P>
108The configuration properties of a <code>SecondaryDatabase</code> extend
109those of a primary <code>Database</code>.
110The secondary database configuration is specified when calling <A HREF="../../../com/sleepycat/db/Environment.html#openSecondaryDatabase(com.sleepycat.db.Transaction, java.lang.String, java.lang.String, com.sleepycat.db.Database, com.sleepycat.db.SecondaryConfig)"><CODE>Environment.openSecondaryDatabase</CODE></A>.
111<p>
112To create a configuration object with default attributes:
113<pre>
114    SecondaryConfig config = new SecondaryConfig();
115</pre>
116To set custom attributes:
117<pre>
118    SecondaryConfig config = new SecondaryConfig();
119    config.setAllowCreate(true);
120    config.setSortedDuplicates(true);
121    config.setKeyCreator(new MyKeyCreator());
122</pre>
123<p>
124<hr>
125<p>
126NOTE: There are two situations where the use of secondary databases without
127transactions requires special consideration.  When using a transactional
128database or when doing read operations only, this note does not apply.
129<ul>
130<li>If secondary is configured to not allow duplicates, when the secondary
131is being updated it is possible that an error will occur when the secondary
132key value in a record being added is already present in the database.  A
133<code>DatabaseException</code> will be thrown in this situation.</li>
134<li>If a foreign key constraint is configured with the delete action
135<code>ABORT</code> (the default setting), a <code>DatabaseException</code>
136will be thrown if an attempt is made to delete a referenced foreign
137key.</li>
138</ul>
139In both cases, the operation will be partially complete because the primary
140database record will have already been updated or deleted.  In the presence
141of transactions, the exception will cause the transaction to abort.  Without
142transactions, it is the responsibility of the caller to handle the results
143of the incomplete update or to take steps to prevent this situation from
144happening in the first place.
145<p>
146</hr>
147<p>
148<P>
149
150<P>
151<DL>
152<DT><B>See Also:</B><DD><A HREF="../../../com/sleepycat/db/Environment.html#openSecondaryDatabase(com.sleepycat.db.Transaction, java.lang.String, java.lang.String, com.sleepycat.db.Database, com.sleepycat.db.SecondaryConfig)"><CODE>Environment.openSecondaryDatabase</CODE></A>, 
153<A HREF="../../../com/sleepycat/db/SecondaryDatabase.html" title="class in com.sleepycat.db"><CODE>SecondaryDatabase</CODE></A></DL>
154<HR>
155
156<P>
157<!-- =========== FIELD SUMMARY =========== -->
158
159<A NAME="field_summary"><!-- --></A>
160<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
161<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
162<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
163<B>Field Summary</B></FONT></TH>
164</TR>
165<TR BGCOLOR="white" CLASS="TableRowColor">
166<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
167<CODE>static&nbsp;<A HREF="../../../com/sleepycat/db/SecondaryConfig.html" title="class in com.sleepycat.db">SecondaryConfig</A></CODE></FONT></TD>
168<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#DEFAULT">DEFAULT</A></B></CODE>
169
170<BR>
171&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
172</TR>
173</TABLE>
174&nbsp;
175<!-- ======== CONSTRUCTOR SUMMARY ======== -->
176
177<A NAME="constructor_summary"><!-- --></A>
178<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
179<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
180<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
181<B>Constructor Summary</B></FONT></TH>
182</TR>
183<TR BGCOLOR="white" CLASS="TableRowColor">
184<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#SecondaryConfig()">SecondaryConfig</A></B>()</CODE>
185
186<BR>
187&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates an instance with the system's default settings.</TD>
188</TR>
189</TABLE>
190&nbsp;
191<!-- ========== METHOD SUMMARY =========== -->
192
193<A NAME="method_summary"><!-- --></A>
194<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
195<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
196<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
197<B>Method Summary</B></FONT></TH>
198</TR>
199<TR BGCOLOR="white" CLASS="TableRowColor">
200<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
201<CODE>&nbsp;boolean</CODE></FONT></TD>
202<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#getAllowPopulate()">getAllowPopulate</A></B>()</CODE>
203
204<BR>
205&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns whether automatic population of the secondary is allowed.</TD>
206</TR>
207<TR BGCOLOR="white" CLASS="TableRowColor">
208<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
209<CODE>&nbsp;com.sleepycat.db.internal.Db</CODE></FONT></TD>
210<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#getForeignKeyDatabase()">getForeignKeyDatabase</A></B>()</CODE>
211
212<BR>
213&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
214</TR>
215<TR BGCOLOR="white" CLASS="TableRowColor">
216<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
217<CODE>&nbsp;<A HREF="../../../com/sleepycat/db/ForeignKeyDeleteAction.html" title="class in com.sleepycat.db">ForeignKeyDeleteAction</A></CODE></FONT></TD>
218<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#getForeignKeyDeleteAction()">getForeignKeyDeleteAction</A></B>()</CODE>
219
220<BR>
221&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
222</TR>
223<TR BGCOLOR="white" CLASS="TableRowColor">
224<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
225<CODE>&nbsp;<A HREF="../../../com/sleepycat/db/ForeignKeyNullifier.html" title="interface in com.sleepycat.db">ForeignKeyNullifier</A></CODE></FONT></TD>
226<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#getForeignKeyNullifier()">getForeignKeyNullifier</A></B>()</CODE>
227
228<BR>
229&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
230</TR>
231<TR BGCOLOR="white" CLASS="TableRowColor">
232<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
233<CODE>&nbsp;<A HREF="../../../com/sleepycat/db/ForeignMultiKeyNullifier.html" title="interface in com.sleepycat.db">ForeignMultiKeyNullifier</A></CODE></FONT></TD>
234<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#getForeignMultiKeyNullifier()">getForeignMultiKeyNullifier</A></B>()</CODE>
235
236<BR>
237&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
238</TR>
239<TR BGCOLOR="white" CLASS="TableRowColor">
240<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
241<CODE>&nbsp;boolean</CODE></FONT></TD>
242<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#getImmutableSecondaryKey()">getImmutableSecondaryKey</A></B>()</CODE>
243
244<BR>
245&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns whether the secondary key is immutable.</TD>
246</TR>
247<TR BGCOLOR="white" CLASS="TableRowColor">
248<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
249<CODE>&nbsp;<A HREF="../../../com/sleepycat/db/SecondaryKeyCreator.html" title="interface in com.sleepycat.db">SecondaryKeyCreator</A></CODE></FONT></TD>
250<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#getKeyCreator()">getKeyCreator</A></B>()</CODE>
251
252<BR>
253&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the user-supplied object used for creating single-valued secondary
254    keys.</TD>
255</TR>
256<TR BGCOLOR="white" CLASS="TableRowColor">
257<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
258<CODE>&nbsp;<A HREF="../../../com/sleepycat/db/SecondaryMultiKeyCreator.html" title="interface in com.sleepycat.db">SecondaryMultiKeyCreator</A></CODE></FONT></TD>
259<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#getMultiKeyCreator()">getMultiKeyCreator</A></B>()</CODE>
260
261<BR>
262&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the user-supplied object used for creating multi-valued secondary
263    keys.</TD>
264</TR>
265<TR BGCOLOR="white" CLASS="TableRowColor">
266<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
267<CODE>&nbsp;void</CODE></FONT></TD>
268<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setAllowPopulate(boolean)">setAllowPopulate</A></B>(boolean&nbsp;allowPopulate)</CODE>
269
270<BR>
271&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Specifies whether automatic population of the secondary is allowed.</TD>
272</TR>
273<TR BGCOLOR="white" CLASS="TableRowColor">
274<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
275<CODE>&nbsp;void</CODE></FONT></TD>
276<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setForeignKeyDatabase(com.sleepycat.db.Database)">setForeignKeyDatabase</A></B>(<A HREF="../../../com/sleepycat/db/Database.html" title="class in com.sleepycat.db">Database</A>&nbsp;foreignDb)</CODE>
277
278<BR>
279&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
280</TR>
281<TR BGCOLOR="white" CLASS="TableRowColor">
282<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
283<CODE>&nbsp;void</CODE></FONT></TD>
284<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setForeignKeyDeleteAction(com.sleepycat.db.ForeignKeyDeleteAction)">setForeignKeyDeleteAction</A></B>(<A HREF="../../../com/sleepycat/db/ForeignKeyDeleteAction.html" title="class in com.sleepycat.db">ForeignKeyDeleteAction</A>&nbsp;action)</CODE>
285
286<BR>
287&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
288</TR>
289<TR BGCOLOR="white" CLASS="TableRowColor">
290<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
291<CODE>&nbsp;void</CODE></FONT></TD>
292<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setForeignKeyNullifier(com.sleepycat.db.ForeignKeyNullifier)">setForeignKeyNullifier</A></B>(<A HREF="../../../com/sleepycat/db/ForeignKeyNullifier.html" title="interface in com.sleepycat.db">ForeignKeyNullifier</A>&nbsp;keyNullifier)</CODE>
293
294<BR>
295&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
296</TR>
297<TR BGCOLOR="white" CLASS="TableRowColor">
298<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
299<CODE>&nbsp;void</CODE></FONT></TD>
300<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setForeignMultiKeyNullifier(com.sleepycat.db.ForeignMultiKeyNullifier)">setForeignMultiKeyNullifier</A></B>(<A HREF="../../../com/sleepycat/db/ForeignMultiKeyNullifier.html" title="interface in com.sleepycat.db">ForeignMultiKeyNullifier</A>&nbsp;multiKeyNullifier)</CODE>
301
302<BR>
303&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
304</TR>
305<TR BGCOLOR="white" CLASS="TableRowColor">
306<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
307<CODE>&nbsp;void</CODE></FONT></TD>
308<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setImmutableSecondaryKey(boolean)">setImmutableSecondaryKey</A></B>(boolean&nbsp;immutableSecondaryKey)</CODE>
309
310<BR>
311&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Specifies whether the secondary key is immutable.</TD>
312</TR>
313<TR BGCOLOR="white" CLASS="TableRowColor">
314<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
315<CODE>&nbsp;void</CODE></FONT></TD>
316<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setKeyCreator(com.sleepycat.db.SecondaryKeyCreator)">setKeyCreator</A></B>(<A HREF="../../../com/sleepycat/db/SecondaryKeyCreator.html" title="interface in com.sleepycat.db">SecondaryKeyCreator</A>&nbsp;keyCreator)</CODE>
317
318<BR>
319&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Specifies the user-supplied object used for creating single-valued
320    secondary keys.</TD>
321</TR>
322<TR BGCOLOR="white" CLASS="TableRowColor">
323<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
324<CODE>&nbsp;void</CODE></FONT></TD>
325<TD><CODE><B><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setMultiKeyCreator(com.sleepycat.db.SecondaryMultiKeyCreator)">setMultiKeyCreator</A></B>(<A HREF="../../../com/sleepycat/db/SecondaryMultiKeyCreator.html" title="interface in com.sleepycat.db">SecondaryMultiKeyCreator</A>&nbsp;multiKeyCreator)</CODE>
326
327<BR>
328&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Specifies the user-supplied object used for creating multi-valued
329    secondary keys.</TD>
330</TR>
331</TABLE>
332&nbsp;<A NAME="methods_inherited_from_class_com.sleepycat.db.DatabaseConfig"><!-- --></A>
333<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
334<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
335<TH ALIGN="left"><B>Methods inherited from class com.sleepycat.db.<A HREF="../../../com/sleepycat/db/DatabaseConfig.html" title="class in com.sleepycat.db">DatabaseConfig</A></B></TH>
336</TR>
337<TR BGCOLOR="white" CLASS="TableRowColor">
338<TD><CODE><A HREF="../../../com/sleepycat/db/DatabaseConfig.html#cloneConfig()">cloneConfig</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getAllowCreate()">getAllowCreate</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getBtreeComparator()">getBtreeComparator</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getBtreeCompressor()">getBtreeCompressor</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getBtreeMinKey()">getBtreeMinKey</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getBtreePrefixCalculator()">getBtreePrefixCalculator</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getBtreeRecordNumbers()">getBtreeRecordNumbers</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getByteOrder()">getByteOrder</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getByteSwapped()">getByteSwapped</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getCacheCount()">getCacheCount</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getCacheSize()">getCacheSize</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getChecksum()">getChecksum</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getCreateDir()">getCreateDir</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getDirtyRead()">getDirtyRead</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getDuplicateComparator()">getDuplicateComparator</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getEncrypted()">getEncrypted</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getErrorHandler()">getErrorHandler</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getErrorPrefix()">getErrorPrefix</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getErrorStream()">getErrorStream</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getExclusiveCreate()">getExclusiveCreate</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getFeedbackHandler()">getFeedbackHandler</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getHashComparator()">getHashComparator</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getHasher()">getHasher</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getHashFillFactor()">getHashFillFactor</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getHashNumElements()">getHashNumElements</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getMessageHandler()">getMessageHandler</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getMessageStream()">getMessageStream</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getMode()">getMode</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getMultiversion()">getMultiversion</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getNoMMap()">getNoMMap</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getPageSize()">getPageSize</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getPanicHandler()">getPanicHandler</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getPartitionDirs()">getPartitionDirs</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getPartitionHandler()">getPartitionHandler</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getPartitionKeys()">getPartitionKeys</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getPartitionParts()">getPartitionParts</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getPriority()">getPriority</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getQueueExtentSize()">getQueueExtentSize</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getQueueInOrder()">getQueueInOrder</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getReadOnly()">getReadOnly</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getReadUncommitted()">getReadUncommitted</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getRecordDelimiter()">getRecordDelimiter</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getRecordLength()">getRecordLength</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getRecordNumberAppender()">getRecordNumberAppender</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getRecordPad()">getRecordPad</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getRecordSource()">getRecordSource</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getRenumbering()">getRenumbering</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getReverseSplitOff()">getReverseSplitOff</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getSnapshot()">getSnapshot</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getSortedDuplicates()">getSortedDuplicates</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getTransactional()">getTransactional</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getTransactionNotDurable()">getTransactionNotDurable</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getTruncate()">getTruncate</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getType()">getType</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#getUnsortedDuplicates()">getUnsortedDuplicates</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setAllowCreate(boolean)">setAllowCreate</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setBtreeComparator(java.util.Comparator)">setBtreeComparator</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setBtreeCompressor(com.sleepycat.db.BtreeCompressor)">setBtreeCompressor</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setBtreeMinKey(int)">setBtreeMinKey</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setBtreePrefixCalculator(com.sleepycat.db.BtreePrefixCalculator)">setBtreePrefixCalculator</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setBtreeRecordNumbers(boolean)">setBtreeRecordNumbers</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setByteOrder(int)">setByteOrder</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setCacheCount(int)">setCacheCount</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setCacheSize(long)">setCacheSize</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setChecksum(boolean)">setChecksum</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setCreateDir(java.io.File)">setCreateDir</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setDirtyRead(boolean)">setDirtyRead</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setDuplicateComparator(java.util.Comparator)">setDuplicateComparator</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setEncrypted(java.lang.String)">setEncrypted</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setErrorHandler(com.sleepycat.db.ErrorHandler)">setErrorHandler</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setErrorPrefix(java.lang.String)">setErrorPrefix</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setErrorStream(java.io.OutputStream)">setErrorStream</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setExclusiveCreate(boolean)">setExclusiveCreate</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setFeedbackHandler(com.sleepycat.db.FeedbackHandler)">setFeedbackHandler</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setHashComparator(java.util.Comparator)">setHashComparator</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setHasher(com.sleepycat.db.Hasher)">setHasher</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setHashFillFactor(int)">setHashFillFactor</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setHashNumElements(int)">setHashNumElements</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setMessageHandler(com.sleepycat.db.MessageHandler)">setMessageHandler</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setMessageStream(java.io.OutputStream)">setMessageStream</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setMode(int)">setMode</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setMultiversion(boolean)">setMultiversion</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setNoMMap(boolean)">setNoMMap</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setPageSize(int)">setPageSize</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setPanicHandler(com.sleepycat.db.PanicHandler)">setPanicHandler</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setPartitionByCallback(int, com.sleepycat.db.PartitionHandler)">setPartitionByCallback</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setPartitionByRange(int, com.sleepycat.db.MultipleDataEntry)">setPartitionByRange</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setPartitionDirs(java.io.File[])">setPartitionDirs</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setPriority(com.sleepycat.db.CacheFilePriority)">setPriority</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setQueueExtentSize(int)">setQueueExtentSize</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setQueueInOrder(boolean)">setQueueInOrder</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setReadOnly(boolean)">setReadOnly</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setReadUncommitted(boolean)">setReadUncommitted</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setRecordDelimiter(int)">setRecordDelimiter</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setRecordLength(int)">setRecordLength</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setRecordNumberAppender(com.sleepycat.db.RecordNumberAppender)">setRecordNumberAppender</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setRecordPad(int)">setRecordPad</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setRecordSource(java.io.File)">setRecordSource</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setRenumbering(boolean)">setRenumbering</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setReverseSplitOff(boolean)">setReverseSplitOff</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setSnapshot(boolean)">setSnapshot</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setSortedDuplicates(boolean)">setSortedDuplicates</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setTransactional(boolean)">setTransactional</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setTransactionNotDurable(boolean)">setTransactionNotDurable</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setTruncate(boolean)">setTruncate</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setType(com.sleepycat.db.DatabaseType)">setType</A>, <A HREF="../../../com/sleepycat/db/DatabaseConfig.html#setUnsortedDuplicates(boolean)">setUnsortedDuplicates</A></CODE></TD>
339</TR>
340</TABLE>
341&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
342<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
343<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
344<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>
345</TR>
346<TR BGCOLOR="white" CLASS="TableRowColor">
347<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>
348</TR>
349</TABLE>
350&nbsp;
351<P>
352
353<!-- ============ FIELD DETAIL =========== -->
354
355<A NAME="field_detail"><!-- --></A>
356<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
357<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
358<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
359<B>Field Detail</B></FONT></TH>
360</TR>
361</TABLE>
362
363<A NAME="DEFAULT"><!-- --></A><H3>
364DEFAULT</H3>
365<PRE>
366public static final <A HREF="../../../com/sleepycat/db/SecondaryConfig.html" title="class in com.sleepycat.db">SecondaryConfig</A> <B>DEFAULT</B></PRE>
367<DL>
368<DL>
369</DL>
370</DL>
371
372<!-- ========= CONSTRUCTOR DETAIL ======== -->
373
374<A NAME="constructor_detail"><!-- --></A>
375<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
376<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
377<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
378<B>Constructor Detail</B></FONT></TH>
379</TR>
380</TABLE>
381
382<A NAME="SecondaryConfig()"><!-- --></A><H3>
383SecondaryConfig</H3>
384<PRE>
385public <B>SecondaryConfig</B>()</PRE>
386<DL>
387<DD>Creates an instance with the system's default settings.
388<P>
389</DL>
390
391<!-- ============ METHOD DETAIL ========== -->
392
393<A NAME="method_detail"><!-- --></A>
394<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
395<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
396<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
397<B>Method Detail</B></FONT></TH>
398</TR>
399</TABLE>
400
401<A NAME="setAllowPopulate(boolean)"><!-- --></A><H3>
402setAllowPopulate</H3>
403<PRE>
404public void <B>setAllowPopulate</B>(boolean&nbsp;allowPopulate)</PRE>
405<DL>
406<DD>Specifies whether automatic population of the secondary is allowed.
407    <p>
408    If automatic population is allowed, when the secondary database is
409    opened it is checked to see if it is empty.  If it is empty, the
410    primary database is read in its entirety and keys are added to the
411    secondary database using the information read from the primary.
412    <p>
413    If this property is set to true and the database is transactional, the
414    population of the secondary will be done within the explicit or auto-commit
415    transaction that is used to open the database.
416    <p>
417<P>
418<DD><DL>
419</DL>
420</DD>
421<DD><DL>
422<DT><B>Parameters:</B><DD><CODE>allowPopulate</CODE> - whether automatic population of the secondary is
423    allowed.</DL>
424</DD>
425</DL>
426<HR>
427
428<A NAME="getAllowPopulate()"><!-- --></A><H3>
429getAllowPopulate</H3>
430<PRE>
431public boolean <B>getAllowPopulate</B>()</PRE>
432<DL>
433<DD>Returns whether automatic population of the secondary is allowed.  If
434    <A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setAllowPopulate(boolean)"><CODE>setAllowPopulate(boolean)</CODE></A> has not been called, this method returns
435    false.
436    <p>
437<P>
438<DD><DL>
439</DL>
440</DD>
441<DD><DL>
442
443<DT><B>Returns:</B><DD>whether automatic population of the secondary is allowed.
444    <p><DT><B>See Also:</B><DD><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setAllowPopulate(boolean)"><CODE>setAllowPopulate(boolean)</CODE></A></DL>
445</DD>
446</DL>
447<HR>
448
449<A NAME="setImmutableSecondaryKey(boolean)"><!-- --></A><H3>
450setImmutableSecondaryKey</H3>
451<PRE>
452public void <B>setImmutableSecondaryKey</B>(boolean&nbsp;immutableSecondaryKey)</PRE>
453<DL>
454<DD>Specifies whether the secondary key is immutable.
455    <p>
456    Specifying that a secondary key is immutable can be used to optimize
457    updates when the secondary key in a primary record will never be changed
458    after that primary record is inserted.  For immutable secondary keys, a
459    best effort is made to avoid calling
460    <code>SecondaryKeyCreator.createSecondaryKey</code> when a primary record
461    is updated.  This optimization may reduce the overhead of an update
462    operation significantly if the <code>createSecondaryKey</code> operation is
463    expensive.
464    <p>
465    Be sure to set this property to true only if the secondary key in the
466    primary record is never changed.  If this rule is violated, the secondary
467    index will become corrupted, that is, it will become out of sync with the
468    primary.
469    <p>
470<P>
471<DD><DL>
472</DL>
473</DD>
474<DD><DL>
475<DT><B>Parameters:</B><DD><CODE>immutableSecondaryKey</CODE> - whether the secondary key is immutable.</DL>
476</DD>
477</DL>
478<HR>
479
480<A NAME="getImmutableSecondaryKey()"><!-- --></A><H3>
481getImmutableSecondaryKey</H3>
482<PRE>
483public boolean <B>getImmutableSecondaryKey</B>()</PRE>
484<DL>
485<DD>Returns whether the secondary key is immutable.  If
486    <A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setImmutableSecondaryKey(boolean)"><CODE>setImmutableSecondaryKey(boolean)</CODE></A> has not been called, this method returns
487    false.
488    <p>
489<P>
490<DD><DL>
491</DL>
492</DD>
493<DD><DL>
494
495<DT><B>Returns:</B><DD>whether the secondary key is immutable.
496    <p><DT><B>See Also:</B><DD><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setImmutableSecondaryKey(boolean)"><CODE>setImmutableSecondaryKey(boolean)</CODE></A></DL>
497</DD>
498</DL>
499<HR>
500
501<A NAME="setKeyCreator(com.sleepycat.db.SecondaryKeyCreator)"><!-- --></A><H3>
502setKeyCreator</H3>
503<PRE>
504public void <B>setKeyCreator</B>(<A HREF="../../../com/sleepycat/db/SecondaryKeyCreator.html" title="interface in com.sleepycat.db">SecondaryKeyCreator</A>&nbsp;keyCreator)</PRE>
505<DL>
506<DD>Specifies the user-supplied object used for creating single-valued
507    secondary keys.
508    <p>
509    Unless the primary database is read-only, a key creator is required
510    when opening a secondary database.  Either a KeyCreator or MultiKeyCreator
511    must be specified, but both may not be specified.
512    <p>
513    Unless the primary database is read-only, a key creator is required
514    when opening a secondary database.
515    <p>
516<P>
517<DD><DL>
518</DL>
519</DD>
520<DD><DL>
521<DT><B>Parameters:</B><DD><CODE>keyCreator</CODE> - the user-supplied object used for creating single-valued
522    secondary keys.</DL>
523</DD>
524</DL>
525<HR>
526
527<A NAME="getKeyCreator()"><!-- --></A><H3>
528getKeyCreator</H3>
529<PRE>
530public <A HREF="../../../com/sleepycat/db/SecondaryKeyCreator.html" title="interface in com.sleepycat.db">SecondaryKeyCreator</A> <B>getKeyCreator</B>()</PRE>
531<DL>
532<DD>Returns the user-supplied object used for creating single-valued secondary
533    keys.
534    <p>
535<P>
536<DD><DL>
537</DL>
538</DD>
539<DD><DL>
540
541<DT><B>Returns:</B><DD>the user-supplied object used for creating single-valued secondary
542    keys.
543    <p><DT><B>See Also:</B><DD><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setKeyCreator(com.sleepycat.db.SecondaryKeyCreator)"><CODE>setKeyCreator(com.sleepycat.db.SecondaryKeyCreator)</CODE></A></DL>
544</DD>
545</DL>
546<HR>
547
548<A NAME="setMultiKeyCreator(com.sleepycat.db.SecondaryMultiKeyCreator)"><!-- --></A><H3>
549setMultiKeyCreator</H3>
550<PRE>
551public void <B>setMultiKeyCreator</B>(<A HREF="../../../com/sleepycat/db/SecondaryMultiKeyCreator.html" title="interface in com.sleepycat.db">SecondaryMultiKeyCreator</A>&nbsp;multiKeyCreator)</PRE>
552<DL>
553<DD>Specifies the user-supplied object used for creating multi-valued
554    secondary keys.
555    <p>
556    Unless the primary database is read-only, a key creator is required
557    when opening a secondary database.  Either a KeyCreator or MultiKeyCreator
558    must be specified, but both may not be specified.
559    <p>
560<P>
561<DD><DL>
562</DL>
563</DD>
564<DD><DL>
565<DT><B>Parameters:</B><DD><CODE>multiKeyCreator</CODE> - the user-supplied object used for creating multi-valued
566    secondary keys.</DL>
567</DD>
568</DL>
569<HR>
570
571<A NAME="getMultiKeyCreator()"><!-- --></A><H3>
572getMultiKeyCreator</H3>
573<PRE>
574public <A HREF="../../../com/sleepycat/db/SecondaryMultiKeyCreator.html" title="interface in com.sleepycat.db">SecondaryMultiKeyCreator</A> <B>getMultiKeyCreator</B>()</PRE>
575<DL>
576<DD>Returns the user-supplied object used for creating multi-valued secondary
577    keys.
578    <p>
579<P>
580<DD><DL>
581</DL>
582</DD>
583<DD><DL>
584
585<DT><B>Returns:</B><DD>the user-supplied object used for creating multi-valued secondary
586    keys.
587    <p><DT><B>See Also:</B><DD><A HREF="../../../com/sleepycat/db/SecondaryConfig.html#setKeyCreator(com.sleepycat.db.SecondaryKeyCreator)"><CODE>setKeyCreator(com.sleepycat.db.SecondaryKeyCreator)</CODE></A></DL>
588</DD>
589</DL>
590<HR>
591
592<A NAME="setForeignKeyDatabase(com.sleepycat.db.Database)"><!-- --></A><H3>
593setForeignKeyDatabase</H3>
594<PRE>
595public void <B>setForeignKeyDatabase</B>(<A HREF="../../../com/sleepycat/db/Database.html" title="class in com.sleepycat.db">Database</A>&nbsp;foreignDb)</PRE>
596<DL>
597<DD><DL>
598</DL>
599</DD>
600<DD><DL>
601</DL>
602</DD>
603</DL>
604<HR>
605
606<A NAME="getForeignKeyDatabase()"><!-- --></A><H3>
607getForeignKeyDatabase</H3>
608<PRE>
609public com.sleepycat.db.internal.Db <B>getForeignKeyDatabase</B>()</PRE>
610<DL>
611<DD><DL>
612</DL>
613</DD>
614<DD><DL>
615</DL>
616</DD>
617</DL>
618<HR>
619
620<A NAME="setForeignKeyDeleteAction(com.sleepycat.db.ForeignKeyDeleteAction)"><!-- --></A><H3>
621setForeignKeyDeleteAction</H3>
622<PRE>
623public void <B>setForeignKeyDeleteAction</B>(<A HREF="../../../com/sleepycat/db/ForeignKeyDeleteAction.html" title="class in com.sleepycat.db">ForeignKeyDeleteAction</A>&nbsp;action)</PRE>
624<DL>
625<DD><DL>
626</DL>
627</DD>
628<DD><DL>
629</DL>
630</DD>
631</DL>
632<HR>
633
634<A NAME="getForeignKeyDeleteAction()"><!-- --></A><H3>
635getForeignKeyDeleteAction</H3>
636<PRE>
637public <A HREF="../../../com/sleepycat/db/ForeignKeyDeleteAction.html" title="class in com.sleepycat.db">ForeignKeyDeleteAction</A> <B>getForeignKeyDeleteAction</B>()</PRE>
638<DL>
639<DD><DL>
640</DL>
641</DD>
642<DD><DL>
643</DL>
644</DD>
645</DL>
646<HR>
647
648<A NAME="setForeignKeyNullifier(com.sleepycat.db.ForeignKeyNullifier)"><!-- --></A><H3>
649setForeignKeyNullifier</H3>
650<PRE>
651public void <B>setForeignKeyNullifier</B>(<A HREF="../../../com/sleepycat/db/ForeignKeyNullifier.html" title="interface in com.sleepycat.db">ForeignKeyNullifier</A>&nbsp;keyNullifier)</PRE>
652<DL>
653<DD><DL>
654</DL>
655</DD>
656<DD><DL>
657</DL>
658</DD>
659</DL>
660<HR>
661
662<A NAME="getForeignKeyNullifier()"><!-- --></A><H3>
663getForeignKeyNullifier</H3>
664<PRE>
665public <A HREF="../../../com/sleepycat/db/ForeignKeyNullifier.html" title="interface in com.sleepycat.db">ForeignKeyNullifier</A> <B>getForeignKeyNullifier</B>()</PRE>
666<DL>
667<DD><DL>
668</DL>
669</DD>
670<DD><DL>
671</DL>
672</DD>
673</DL>
674<HR>
675
676<A NAME="setForeignMultiKeyNullifier(com.sleepycat.db.ForeignMultiKeyNullifier)"><!-- --></A><H3>
677setForeignMultiKeyNullifier</H3>
678<PRE>
679public void <B>setForeignMultiKeyNullifier</B>(<A HREF="../../../com/sleepycat/db/ForeignMultiKeyNullifier.html" title="interface in com.sleepycat.db">ForeignMultiKeyNullifier</A>&nbsp;multiKeyNullifier)</PRE>
680<DL>
681<DD><DL>
682</DL>
683</DD>
684<DD><DL>
685</DL>
686</DD>
687</DL>
688<HR>
689
690<A NAME="getForeignMultiKeyNullifier()"><!-- --></A><H3>
691getForeignMultiKeyNullifier</H3>
692<PRE>
693public <A HREF="../../../com/sleepycat/db/ForeignMultiKeyNullifier.html" title="interface in com.sleepycat.db">ForeignMultiKeyNullifier</A> <B>getForeignMultiKeyNullifier</B>()</PRE>
694<DL>
695<DD><DL>
696</DL>
697</DD>
698<DD><DL>
699</DL>
700</DD>
701</DL>
702<!-- ========= END OF CLASS DATA ========= -->
703<HR>
704
705
706<!-- ======= START OF BOTTOM NAVBAR ====== -->
707<A NAME="navbar_bottom"><!-- --></A>
708<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
709<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
710<TR>
711<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
712<A NAME="navbar_bottom_firstrow"><!-- --></A>
713<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
714  <TR ALIGN="center" VALIGN="top">
715  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
716  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
717  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
718  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/SecondaryConfig.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
719  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
720  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
721  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
722  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
723  </TR>
724</TABLE>
725</TD>
726<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
727<b>Berkeley DB</b><br><font size="-1"> version 4.8.30</font></EM>
728</TD>
729</TR>
730
731<TR>
732<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
733&nbsp;<A HREF="../../../com/sleepycat/db/RunRecoveryException.html" title="class in com.sleepycat.db"><B>PREV CLASS</B></A>&nbsp;
734&nbsp;<A HREF="../../../com/sleepycat/db/SecondaryCursor.html" title="class in com.sleepycat.db"><B>NEXT CLASS</B></A></FONT></TD>
735<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
736  <A HREF="../../../index.html?com/sleepycat/db/SecondaryConfig.html" target="_top"><B>FRAMES</B></A>  &nbsp;
737&nbsp;<A HREF="SecondaryConfig.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
738&nbsp;<SCRIPT type="text/javascript">
739  <!--
740  if(window==top) {
741    document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
742  }
743  //-->
744</SCRIPT>
745<NOSCRIPT>
746  <A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
747</NOSCRIPT>
748
749
750</FONT></TD>
751</TR>
752<TR>
753<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
754  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
755<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
756DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
757</TR>
758</TABLE>
759<A NAME="skip-navbar_bottom"></A>
760<!-- ======== END OF BOTTOM NAVBAR ======= -->
761
762<HR>
763<font size=1>Copyright (c) 1996-2009 Oracle.  All rights reserved.</font>
764</BODY>
765</HTML>
766