<!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_0) on Wed Feb 11 22:24:08 EST 2009 --> <TITLE> TupleInput </TITLE> <META NAME="date" CONTENT="2009-02-11"> <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="TupleInput"; } } </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> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../com/sleepycat/bind/tuple/TupleBinding.html" title="class in com.sleepycat.bind.tuple"><B>PREV CLASS</B></A> <A HREF="../../../../com/sleepycat/bind/tuple/TupleInputBinding.html" title="class in com.sleepycat.bind.tuple"><B>NEXT CLASS</B></A></FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../index.html?com/sleepycat/bind/tuple/TupleInput.html" target="_top"><B>FRAMES</B></A> <A HREF="TupleInput.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> <TR> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_com.sleepycat.util.FastInputStream">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_top"></A> <!-- ========= END OF TOP NAVBAR ========= --> <HR> <!-- ======== START OF CLASS DATA ======== --> <H2> <FONT SIZE="-1"> com.sleepycat.bind.tuple</FONT> <BR> Class TupleInput</H2> <PRE> java.lang.Object <IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">java.io.InputStream <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../com/sleepycat/util/FastInputStream.html" title="class in com.sleepycat.util">com.sleepycat.util.FastInputStream</A> <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.sleepycat.bind.tuple.TupleInput</B> </PRE> <DL> <DT><B>All Implemented Interfaces:</B> <DD>java.io.Closeable</DD> </DL> <HR> <DL> <DT><PRE>public class <B>TupleInput</B><DT>extends <A HREF="../../../../com/sleepycat/util/FastInputStream.html" title="class in com.sleepycat.util">FastInputStream</A></DL> </PRE> <P> An <code>InputStream</code> with <code>DataInput</code>-like methods for reading tuple fields. It is used by <code>TupleBinding</code>. <p>This class has many methods that have the same signatures as methods in the <CODE>DataInput</CODE> interface. The reason this class does not implement <CODE>DataInput</CODE> is because it would break the interface contract for those methods because of data format differences.</p> <p>Signed numbers are stored in the buffer in MSB (most significant byte first) order with their sign bit (high-order bit) inverted to cause negative numbers to be sorted first when comparing values as unsigned byte arrays, as done in a database. Unsigned numbers, including characters, are stored in MSB order with no change to their sign bit. BigInteger values are stored with a preceding length having the same sign as the value.</p> <p>Strings and character arrays are stored either as a fixed length array of unicode characters, where the length must be known by the application, or as a null-terminated UTF byte array.</p> <ul> <li>Null strings are UTF encoded as { 0xFF }, which is not allowed in a standard UTF encoding. This allows null strings, as distinct from empty or zero length strings, to be represented in a tuple. Using the default comparator, null strings will be ordered last.</li> <li>Zero (0x0000) character values are UTF encoded as non-zero values, and therefore embedded zeros in the string are supported. The sequence { 0xC0, 0x80 } is used to encode a zero character. This UTF encoding is the same one used by native Java UTF libraries. However, this encoding of zero does impact the lexicographical ordering, and zeros will not be sorted first (the natural order) or last. For all character values other than zero, the default UTF byte ordering is the same as the Unicode lexicographical character ordering.</li> </ul> <p>Floats and doubles are stored using two different representations: sorted representation and integer-bit (IEEE 754) representation. If you use negative floating point numbers in a key, you should use sorted representation; alternatively you may use integer-bit representation but you will need to implement and configure a custom comparator to get correct numeric ordering for negative numbers.</p> <p>To use sorted representation use this set of methods:</p> <ul> <li><A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeSortedFloat(float)"><CODE>TupleOutput.writeSortedFloat(float)</CODE></A></li> <li><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readSortedFloat()"><CODE>readSortedFloat()</CODE></A></li> <li><A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeSortedDouble(double)"><CODE>TupleOutput.writeSortedDouble(double)</CODE></A></li> <li><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readSortedDouble()"><CODE>readSortedDouble()</CODE></A></li> </ul> <p>To use integer-bit representation use this set of methods:</p> <ul> <li><A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeFloat(float)"><CODE>TupleOutput.writeFloat(float)</CODE></A></li> <li><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readFloat()"><CODE>readFloat()</CODE></A></li> <li><A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeDouble(double)"><CODE>TupleOutput.writeDouble(double)</CODE></A></li> <li><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readDouble()"><CODE>readDouble()</CODE></A></li> </ul> <P> <P> <HR> <P> <!-- =========== FIELD SUMMARY =========== --> <A NAME="field_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Field Summary</B></FONT></TH> </TR> </TABLE> <A NAME="fields_inherited_from_class_com.sleepycat.util.FastInputStream"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> <TH ALIGN="left"><B>Fields inherited from class com.sleepycat.util.<A HREF="../../../../com/sleepycat/util/FastInputStream.html" title="class in com.sleepycat.util">FastInputStream</A></B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><A HREF="../../../../com/sleepycat/util/FastInputStream.html#buf">buf</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#len">len</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#mark">mark</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#off">off</A></CODE></TD> </TR> </TABLE> <!-- ======== CONSTRUCTOR SUMMARY ======== --> <A NAME="constructor_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Constructor Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#TupleInput(byte[])">TupleInput</A></B>(byte[] buffer)</CODE> <BR> Creates a tuple input object for reading a byte array of tuple data.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#TupleInput(byte[], int, int)">TupleInput</A></B>(byte[] buffer, int offset, int length)</CODE> <BR> Creates a tuple input object for reading a byte array of tuple data at a given offset for a given length.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#TupleInput(com.sleepycat.bind.tuple.TupleOutput)">TupleInput</A></B>(<A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html" title="class in com.sleepycat.bind.tuple">TupleOutput</A> output)</CODE> <BR> Creates a tuple input object from the data contained in a tuple output object.</TD> </TR> </TABLE> <!-- ========== METHOD SUMMARY =========== --> <A NAME="method_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Method Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#getBigIntegerByteLength()">getBigIntegerByteLength</A></B>()</CODE> <BR> Returns the byte length of a <code>BigInteger</code>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#getPackedIntByteLength()">getPackedIntByteLength</A></B>()</CODE> <BR> Returns the byte length of a packed integer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#getPackedLongByteLength()">getPackedLongByteLength</A></B>()</CODE> <BR> Returns the byte length of a packed long integer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#getStringByteLength()">getStringByteLength</A></B>()</CODE> <BR> Returns the byte length of a null-terminated UTF string in the data buffer, including the terminator.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> java.math.BigInteger</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readBigInteger()">readBigInteger</A></B>()</CODE> <BR> Reads a <code>BigInteger</code>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readBoolean()">readBoolean</A></B>()</CODE> <BR> Reads a boolean (one byte) unsigned value from the buffer and returns true if it is non-zero and false if it is zero.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> byte</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readByte()">readByte</A></B>()</CODE> <BR> Reads a signed byte (one byte) value from the buffer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readBytes(char[])">readBytes</A></B>(char[] chars)</CODE> <BR> Reads the specified number of bytes from the buffer, converting each unsigned byte value to a character of the resulting array.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> java.lang.String</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readBytes(int)">readBytes</A></B>(int length)</CODE> <BR> Reads the specified number of bytes from the buffer, converting each unsigned byte value to a character of the resulting string.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> char</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readChar()">readChar</A></B>()</CODE> <BR> Reads a char (two byte) unsigned value from the buffer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readChars(char[])">readChars</A></B>(char[] chars)</CODE> <BR> Reads the specified number of characters from the buffer, converting each two byte unsigned value to a character of the resulting array.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> java.lang.String</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readChars(int)">readChars</A></B>(int length)</CODE> <BR> Reads the specified number of characters from the buffer, converting each two byte unsigned value to a character of the resulting string.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> double</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readDouble()">readDouble</A></B>()</CODE> <BR> Reads a signed double (eight byte) value from the buffer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> float</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readFloat()">readFloat</A></B>()</CODE> <BR> Reads a signed float (four byte) value from the buffer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readInt()">readInt</A></B>()</CODE> <BR> Reads a signed int (four byte) value from the buffer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> long</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readLong()">readLong</A></B>()</CODE> <BR> Reads a signed long (eight byte) value from the buffer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readPackedInt()">readPackedInt</A></B>()</CODE> <BR> Reads a packed integer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> long</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readPackedLong()">readPackedLong</A></B>()</CODE> <BR> Reads a packed long integer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> short</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readShort()">readShort</A></B>()</CODE> <BR> Reads a signed short (two byte) value from the buffer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> double</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readSortedDouble()">readSortedDouble</A></B>()</CODE> <BR> Reads a signed double (eight byte) value from the buffer, with support for correct default sorting of all values.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> float</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readSortedFloat()">readSortedFloat</A></B>()</CODE> <BR> Reads a signed float (four byte) value from the buffer, with support for correct default sorting of all values.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> java.lang.String</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readString()">readString</A></B>()</CODE> <BR> Reads a null-terminated UTF string from the data buffer and converts the data from UTF to Unicode.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readString(char[])">readString</A></B>(char[] chars)</CODE> <BR> Reads the specified number of UTF characters string from the data buffer and converts the data from UTF to Unicode.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> java.lang.String</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readString(int)">readString</A></B>(int length)</CODE> <BR> Reads the specified number of UTF characters string from the data buffer and converts the data from UTF to Unicode.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readUnsignedByte()">readUnsignedByte</A></B>()</CODE> <BR> Reads an unsigned byte (one byte) value from the buffer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> long</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readUnsignedInt()">readUnsignedInt</A></B>()</CODE> <BR> Reads an unsigned int (four byte) value from the buffer.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readUnsignedShort()">readUnsignedShort</A></B>()</CODE> <BR> Reads an unsigned short (two byte) value from the buffer.</TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_com.sleepycat.util.FastInputStream"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> <TH ALIGN="left"><B>Methods inherited from class com.sleepycat.util.<A HREF="../../../../com/sleepycat/util/FastInputStream.html" title="class in com.sleepycat.util">FastInputStream</A></B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><A HREF="../../../../com/sleepycat/util/FastInputStream.html#available()">available</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#getBufferBytes()">getBufferBytes</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#getBufferLength()">getBufferLength</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#getBufferOffset()">getBufferOffset</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#mark(int)">mark</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#markSupported()">markSupported</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#read()">read</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#read(byte[])">read</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#read(byte[], int, int)">read</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#readFast()">readFast</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#readFast(byte[])">readFast</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#readFast(byte[], int, int)">readFast</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#reset()">reset</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#skip(long)">skip</A>, <A HREF="../../../../com/sleepycat/util/FastInputStream.html#skipFast(int)">skipFast</A></CODE></TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_java.io.InputStream"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> <TH ALIGN="left"><B>Methods inherited from class java.io.InputStream</B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE>close</CODE></TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> <TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD> </TR> </TABLE> <P> <!-- ========= CONSTRUCTOR DETAIL ======== --> <A NAME="constructor_detail"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> <B>Constructor Detail</B></FONT></TH> </TR> </TABLE> <A NAME="TupleInput(byte[])"><!-- --></A><H3> TupleInput</H3> <PRE> public <B>TupleInput</B>(byte[] buffer)</PRE> <DL> <DD>Creates a tuple input object for reading a byte array of tuple data. A reference to the byte array will be kept by this object (it will not be copied) and therefore the byte array should not be modified while this object is in use. <P> <DL> <DT><B>Parameters:</B><DD><CODE>buffer</CODE> - is the byte array to be read and should contain data in tuple format.</DL> </DL> <HR> <A NAME="TupleInput(byte[], int, int)"><!-- --></A><H3> TupleInput</H3> <PRE> public <B>TupleInput</B>(byte[] buffer, int offset, int length)</PRE> <DL> <DD>Creates a tuple input object for reading a byte array of tuple data at a given offset for a given length. A reference to the byte array will be kept by this object (it will not be copied) and therefore the byte array should not be modified while this object is in use. <P> <DL> <DT><B>Parameters:</B><DD><CODE>buffer</CODE> - is the byte array to be read and should contain data in tuple format.<DD><CODE>offset</CODE> - is the byte offset at which to begin reading.<DD><CODE>length</CODE> - is the number of bytes to be read.</DL> </DL> <HR> <A NAME="TupleInput(com.sleepycat.bind.tuple.TupleOutput)"><!-- --></A><H3> TupleInput</H3> <PRE> public <B>TupleInput</B>(<A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html" title="class in com.sleepycat.bind.tuple">TupleOutput</A> output)</PRE> <DL> <DD>Creates a tuple input object from the data contained in a tuple output object. A reference to the tuple output's byte array will be kept by this object (it will not be copied) and therefore the tuple output object should not be modified while this object is in use. <P> <DL> <DT><B>Parameters:</B><DD><CODE>output</CODE> - is the tuple output object containing the data to be read.</DL> </DL> <!-- ============ METHOD DETAIL ========== --> <A NAME="method_detail"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> <B>Method Detail</B></FONT></TH> </TR> </TABLE> <A NAME="readString()"><!-- --></A><H3> readString</H3> <PRE> public final java.lang.String <B>readString</B>() throws java.lang.IndexOutOfBoundsException, java.lang.IllegalArgumentException</PRE> <DL> <DD>Reads a null-terminated UTF string from the data buffer and converts the data from UTF to Unicode. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeString(java.lang.String)"><CODE>TupleOutput.writeString(String)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the converted string. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if no null terminating byte is found in the buffer. <DD><CODE>java.lang.IllegalArgumentException</CODE> - malformed UTF data is encountered.</DL> </DD> </DL> <HR> <A NAME="readChar()"><!-- --></A><H3> readChar</H3> <PRE> public final char <B>readChar</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a char (two byte) unsigned value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeChar(int)"><CODE>TupleOutput.writeChar(int)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readBoolean()"><!-- --></A><H3> readBoolean</H3> <PRE> public final boolean <B>readBoolean</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a boolean (one byte) unsigned value from the buffer and returns true if it is non-zero and false if it is zero. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeBoolean(boolean)"><CODE>TupleOutput.writeBoolean(boolean)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readByte()"><!-- --></A><H3> readByte</H3> <PRE> public final byte <B>readByte</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a signed byte (one byte) value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeByte(int)"><CODE>TupleOutput.writeByte(int)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readShort()"><!-- --></A><H3> readShort</H3> <PRE> public final short <B>readShort</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a signed short (two byte) value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeShort(int)"><CODE>TupleOutput.writeShort(int)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readInt()"><!-- --></A><H3> readInt</H3> <PRE> public final int <B>readInt</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a signed int (four byte) value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeInt(int)"><CODE>TupleOutput.writeInt(int)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readLong()"><!-- --></A><H3> readLong</H3> <PRE> public final long <B>readLong</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a signed long (eight byte) value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeLong(long)"><CODE>TupleOutput.writeLong(long)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readFloat()"><!-- --></A><H3> readFloat</H3> <PRE> public final float <B>readFloat</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a signed float (four byte) value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeFloat(float)"><CODE>TupleOutput.writeFloat(float)</CODE></A>. <code>Float.intBitsToFloat</code> is used to convert the signed int value. <p><em>Note:</em> This method operations on byte array values that by default (without a custom comparator) do <em>not</em> sort correctly for negative values. Only non-negative values are sorted correctly by default. To sort all values correctly by default, use <A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readSortedFloat()"><CODE>readSortedFloat()</CODE></A>.</p> <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readDouble()"><!-- --></A><H3> readDouble</H3> <PRE> public final double <B>readDouble</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a signed double (eight byte) value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeDouble(double)"><CODE>TupleOutput.writeDouble(double)</CODE></A>. <code>Double.longBitsToDouble</code> is used to convert the signed long value. <p><em>Note:</em> This method operations on byte array values that by default (without a custom comparator) do <em>not</em> sort correctly for negative values. Only non-negative values are sorted correctly by default. To sort all values correctly by default, use <A HREF="../../../../com/sleepycat/bind/tuple/TupleInput.html#readSortedDouble()"><CODE>readSortedDouble()</CODE></A>.</p> <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readSortedFloat()"><!-- --></A><H3> readSortedFloat</H3> <PRE> public final float <B>readSortedFloat</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a signed float (four byte) value from the buffer, with support for correct default sorting of all values. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeSortedFloat(float)"><CODE>TupleOutput.writeSortedFloat(float)</CODE></A>. <p><code>Float.intBitsToFloat</code> and the following bit manipulations are used to convert the stored representation to a signed float value.</p> <pre> int val = ... // get stored bits val ^= (val < 0) ? 0x80000000 : 0xffffffff; return Float.intBitsToFloat(val); </pre> <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readSortedDouble()"><!-- --></A><H3> readSortedDouble</H3> <PRE> public final double <B>readSortedDouble</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads a signed double (eight byte) value from the buffer, with support for correct default sorting of all values. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeSortedDouble(double)"><CODE>TupleOutput.writeSortedDouble(double)</CODE></A>. <p><code>Float.longBitsToDouble</code> and the following bit manipulations are used to convert the stored representation to a signed double value.</p> <pre> int val = ... // get stored bits val ^= (val < 0) ? 0x8000000000000000L : 0xffffffffffffffffL; return Double.longBitsToDouble(val); </pre> <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readUnsignedByte()"><!-- --></A><H3> readUnsignedByte</H3> <PRE> public final int <B>readUnsignedByte</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads an unsigned byte (one byte) value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeUnsignedByte(int)"><CODE>TupleOutput.writeUnsignedByte(int)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readUnsignedShort()"><!-- --></A><H3> readUnsignedShort</H3> <PRE> public final int <B>readUnsignedShort</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads an unsigned short (two byte) value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeUnsignedShort(int)"><CODE>TupleOutput.writeUnsignedShort(int)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readUnsignedInt()"><!-- --></A><H3> readUnsignedInt</H3> <PRE> public final long <B>readUnsignedInt</B>() throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads an unsigned int (four byte) value from the buffer. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeUnsignedInt(long)"><CODE>TupleOutput.writeUnsignedInt(long)</CODE></A>. <P> <DD><DL> <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readBytes(int)"><!-- --></A><H3> readBytes</H3> <PRE> public final java.lang.String <B>readBytes</B>(int length) throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads the specified number of bytes from the buffer, converting each unsigned byte value to a character of the resulting string. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeBytes(java.lang.String)"><CODE>TupleOutput.writeBytes(java.lang.String)</CODE></A>. Only characters with values below 0x100 may be read using this method. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>length</CODE> - is the number of bytes to be read. <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readChars(int)"><!-- --></A><H3> readChars</H3> <PRE> public final java.lang.String <B>readChars</B>(int length) throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads the specified number of characters from the buffer, converting each two byte unsigned value to a character of the resulting string. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeChars(java.lang.String)"><CODE>TupleOutput.writeChars(java.lang.String)</CODE></A>. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>length</CODE> - is the number of characters to be read. <DT><B>Returns:</B><DD>the value read from the buffer. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readBytes(char[])"><!-- --></A><H3> readBytes</H3> <PRE> public final void <B>readBytes</B>(char[] chars) throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads the specified number of bytes from the buffer, converting each unsigned byte value to a character of the resulting array. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeBytes(java.lang.String)"><CODE>TupleOutput.writeBytes(java.lang.String)</CODE></A>. Only characters with values below 0x100 may be read using this method. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>chars</CODE> - is the array to receive the data and whose length is used to determine the number of bytes to be read. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readChars(char[])"><!-- --></A><H3> readChars</H3> <PRE> public final void <B>readChars</B>(char[] chars) throws java.lang.IndexOutOfBoundsException</PRE> <DL> <DD>Reads the specified number of characters from the buffer, converting each two byte unsigned value to a character of the resulting array. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeChars(java.lang.String)"><CODE>TupleOutput.writeChars(java.lang.String)</CODE></A>. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>chars</CODE> - is the array to receive the data and whose length is used to determine the number of characters to be read. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if not enough bytes are available in the buffer.</DL> </DD> </DL> <HR> <A NAME="readString(int)"><!-- --></A><H3> readString</H3> <PRE> public final java.lang.String <B>readString</B>(int length) throws java.lang.IndexOutOfBoundsException, java.lang.IllegalArgumentException</PRE> <DL> <DD>Reads the specified number of UTF characters string from the data buffer and converts the data from UTF to Unicode. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeString(char[])"><CODE>TupleOutput.writeString(char[])</CODE></A>. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>length</CODE> - is the number of characters to be read. <DT><B>Returns:</B><DD>the converted string. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if no null terminating byte is found in the buffer. <DD><CODE>java.lang.IllegalArgumentException</CODE> - malformed UTF data is encountered.</DL> </DD> </DL> <HR> <A NAME="readString(char[])"><!-- --></A><H3> readString</H3> <PRE> public final void <B>readString</B>(char[] chars) throws java.lang.IndexOutOfBoundsException, java.lang.IllegalArgumentException</PRE> <DL> <DD>Reads the specified number of UTF characters string from the data buffer and converts the data from UTF to Unicode. Reads values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeString(char[])"><CODE>TupleOutput.writeString(char[])</CODE></A>. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>chars</CODE> - is the array to receive the data and whose length is used to determine the number of characters to be read. <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if no null terminating byte is found in the buffer. <DD><CODE>java.lang.IllegalArgumentException</CODE> - malformed UTF data is encountered.</DL> </DD> </DL> <HR> <A NAME="getStringByteLength()"><!-- --></A><H3> getStringByteLength</H3> <PRE> public final int <B>getStringByteLength</B>() throws java.lang.IndexOutOfBoundsException, java.lang.IllegalArgumentException</PRE> <DL> <DD>Returns the byte length of a null-terminated UTF string in the data buffer, including the terminator. Used with string values that were written using <A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeString(java.lang.String)"><CODE>TupleOutput.writeString(String)</CODE></A>. <P> <DD><DL> <DT><B>Throws:</B> <DD><CODE>java.lang.IndexOutOfBoundsException</CODE> - if no null terminating byte is found in the buffer. <DD><CODE>java.lang.IllegalArgumentException</CODE> - malformed UTF data is encountered.</DL> </DD> </DL> <HR> <A NAME="readPackedInt()"><!-- --></A><H3> readPackedInt</H3> <PRE> public final int <B>readPackedInt</B>()</PRE> <DL> <DD>Reads a packed integer. Note that packed integers are not appropriate for sorted values (keys) unless a custom comparator is used. <P> <DD><DL> <DT><B>See Also:</B><DD><A HREF="../../../../com/sleepycat/util/PackedInteger.html" title="class in com.sleepycat.util"><CODE>PackedInteger</CODE></A></DL> </DD> </DL> <HR> <A NAME="getPackedIntByteLength()"><!-- --></A><H3> getPackedIntByteLength</H3> <PRE> public final int <B>getPackedIntByteLength</B>()</PRE> <DL> <DD>Returns the byte length of a packed integer. <P> <DD><DL> <DT><B>See Also:</B><DD><A HREF="../../../../com/sleepycat/util/PackedInteger.html" title="class in com.sleepycat.util"><CODE>PackedInteger</CODE></A></DL> </DD> </DL> <HR> <A NAME="readPackedLong()"><!-- --></A><H3> readPackedLong</H3> <PRE> public final long <B>readPackedLong</B>()</PRE> <DL> <DD>Reads a packed long integer. Note that packed integers are not appropriate for sorted values (keys) unless a custom comparator is used. <P> <DD><DL> <DT><B>See Also:</B><DD><A HREF="../../../../com/sleepycat/util/PackedInteger.html" title="class in com.sleepycat.util"><CODE>PackedInteger</CODE></A></DL> </DD> </DL> <HR> <A NAME="getPackedLongByteLength()"><!-- --></A><H3> getPackedLongByteLength</H3> <PRE> public final int <B>getPackedLongByteLength</B>()</PRE> <DL> <DD>Returns the byte length of a packed long integer. <P> <DD><DL> <DT><B>See Also:</B><DD><A HREF="../../../../com/sleepycat/util/PackedInteger.html" title="class in com.sleepycat.util"><CODE>PackedInteger</CODE></A></DL> </DD> </DL> <HR> <A NAME="readBigInteger()"><!-- --></A><H3> readBigInteger</H3> <PRE> public final java.math.BigInteger <B>readBigInteger</B>()</PRE> <DL> <DD>Reads a <code>BigInteger</code>. <P> <DD><DL> <DT><B>See Also:</B><DD><A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeBigInteger(java.math.BigInteger)"><CODE>TupleOutput.writeBigInteger(java.math.BigInteger)</CODE></A></DL> </DD> </DL> <HR> <A NAME="getBigIntegerByteLength()"><!-- --></A><H3> getBigIntegerByteLength</H3> <PRE> public final int <B>getBigIntegerByteLength</B>()</PRE> <DL> <DD>Returns the byte length of a <code>BigInteger</code>. <P> <DD><DL> <DT><B>See Also:</B><DD><A HREF="../../../../com/sleepycat/bind/tuple/TupleOutput.html#writeBigInteger(java.math.BigInteger)"><CODE>TupleOutput.writeBigInteger(java.math.BigInteger)</CODE></A></DL> </DD> </DL> <!-- ========= END OF CLASS DATA ========= --> <HR> <!-- ======= START OF BOTTOM NAVBAR ====== --> <A NAME="navbar_bottom"><!-- --></A> <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A> <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> <TR> <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A NAME="navbar_bottom_firstrow"><!-- --></A> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../com/sleepycat/bind/tuple/TupleBinding.html" title="class in com.sleepycat.bind.tuple"><B>PREV CLASS</B></A> <A HREF="../../../../com/sleepycat/bind/tuple/TupleInputBinding.html" title="class in com.sleepycat.bind.tuple"><B>NEXT CLASS</B></A></FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../index.html?com/sleepycat/bind/tuple/TupleInput.html" target="_top"><B>FRAMES</B></A> <A HREF="TupleInput.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> <TR> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_com.sleepycat.util.FastInputStream">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_bottom"></A> <!-- ======== END OF BOTTOM NAVBAR ======= --> <HR> </BODY> </HTML>