mirror of
https://github.com/ChronosX88/FreePastry.git
synced 2025-01-16 09:36:27 +00:00
1251 lines
54 KiB
HTML
1251 lines
54 KiB
HTML
<!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_07) on Fri Mar 13 20:01:03 CET 2009 -->
|
|
<TITLE>
|
|
PersistentStorage (Rice Pastry - API Specifications)
|
|
</TITLE>
|
|
|
|
<META NAME="date" CONTENT="2009-03-13">
|
|
|
|
<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="PersistentStorage (Rice Pastry - API Specifications)";
|
|
}
|
|
}
|
|
</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="class-use/PersistentStorage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </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>
|
|
Rice Pastry API</EM>
|
|
</TD>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
|
<A HREF="../../rice/persistence/MemoryStorage.html" title="class in rice.persistence"><B>PREV CLASS</B></A>
|
|
<A HREF="../../rice/persistence/Storage.html" title="interface in rice.persistence"><B>NEXT CLASS</B></A></FONT></TD>
|
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
|
<A HREF="../../index.html?rice/persistence/PersistentStorage.html" target="_top"><B>FRAMES</B></A>
|
|
<A HREF="PersistentStorage.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="#field_summary">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: <A HREF="#field_detail">FIELD</A> | <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">
|
|
rice.persistence</FONT>
|
|
<BR>
|
|
Class PersistentStorage</H2>
|
|
<PRE>
|
|
java.lang.Object
|
|
<IMG SRC="../../resources/inherit.gif" ALT="extended by "><B>rice.persistence.PersistentStorage</B>
|
|
</PRE>
|
|
<DL>
|
|
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A>, <A HREF="../../rice/persistence/Storage.html" title="interface in rice.persistence">Storage</A></DD>
|
|
</DL>
|
|
<HR>
|
|
<DL>
|
|
<DT><PRE>public class <B>PersistentStorage</B><DT>extends java.lang.Object<DT>implements <A HREF="../../rice/persistence/Storage.html" title="interface in rice.persistence">Storage</A></DL>
|
|
</PRE>
|
|
|
|
<P>
|
|
This class is an implementation of Storage which provides
|
|
persistent storage to disk. This class also guarantees that
|
|
the data will be consistent, even after a crash. This class
|
|
also provides these services is a non-blocking fashion by
|
|
launching a separate thread which is tasked with actually
|
|
writing the data to disk.
|
|
|
|
This class was initially designed to support only Ids whose toString()
|
|
method returns a String of constant length. It has been extended to
|
|
support variable-length toString()s, but we have the caveat that
|
|
not toString() can be a substring of another toString() - this
|
|
will cause undefined behavior. <b>Additionally, the toString() method on the key Ids
|
|
*CANNOT* have the period ('.') or exclamation point ('!')
|
|
characters in them - these are used for internal purposes.<b>
|
|
|
|
The serialized objects are stored on-disk in a GZIPed XML format,
|
|
which provides extensibility with reasonable storage and processing
|
|
costs. Additionally, any metadata, if provided, is also stored
|
|
in the on-disk file. The format of the file is
|
|
|
|
[Key, Object, Version, Gzipped XML]
|
|
[Metadata, Gzipped XML]
|
|
[persistence magic number, long]
|
|
[persistence version, long]
|
|
[persistence revision, long]
|
|
[metadata length, long]
|
|
|
|
The persistence package is set up to automatically upgrade older
|
|
versions of the on-disk format as new data is written under the
|
|
key.
|
|
|
|
Persistence also supports the metadata interface specified in the
|
|
Catalog interface. All metadata is guaranteed to be stored
|
|
in memory, so fetching the metadata of a given key is an efficient
|
|
operation.
|
|
<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>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static java.lang.String</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#BACKUP_DIRECTORY">BACKUP_DIRECTORY</A></B></CODE>
|
|
|
|
<BR>
|
|
Static variables which define the location of the storage root</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static java.lang.String</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#LOST_AND_FOUND_DIRECTORY">LOST_AND_FOUND_DIRECTORY</A></B></CODE>
|
|
|
|
<BR>
|
|
</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static int</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#MAX_DIRECTORIES">MAX_DIRECTORIES</A></B></CODE>
|
|
|
|
<BR>
|
|
The maximum number of subdirectories in a directory before splitting</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static int</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#MAX_FILES">MAX_FILES</A></B></CODE>
|
|
|
|
<BR>
|
|
The splitting factor, or the number of files in one directory</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static java.lang.String</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#METADATA_FILENAME">METADATA_FILENAME</A></B></CODE>
|
|
|
|
<BR>
|
|
</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static int</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#METADATA_SYNC_TIME">METADATA_SYNC_TIME</A></B></CODE>
|
|
|
|
<BR>
|
|
The amount of time before re-writing the metadata file</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static long</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#PERSISTENCE_MAGIC_NUMBER">PERSISTENCE_MAGIC_NUMBER</A></B></CODE>
|
|
|
|
<BR>
|
|
Static variables defining the layout of the on-disk storage</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static long</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#PERSISTENCE_REVISION_2_0">PERSISTENCE_REVISION_2_0</A></B></CODE>
|
|
|
|
<BR>
|
|
</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static long</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#PERSISTENCE_REVISION_2_1">PERSISTENCE_REVISION_2_1</A></B></CODE>
|
|
|
|
<BR>
|
|
</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static long</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#PERSISTENCE_VERSION_2">PERSISTENCE_VERSION_2</A></B></CODE>
|
|
|
|
<BR>
|
|
</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>static java.lang.String</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#ZERO_LENGTH_NAME">ZERO_LENGTH_NAME</A></B></CODE>
|
|
|
|
<BR>
|
|
Special placeholder for the file whose name should be zero-length</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="../../rice/persistence/PersistentStorage.html#PersistentStorage(rice.p2p.commonapi.IdFactory, java.lang.String, long, rice.environment.Environment)">PersistentStorage</A></B>(<A HREF="../../rice/p2p/commonapi/IdFactory.html" title="interface in rice.p2p.commonapi">IdFactory</A> factory,
|
|
java.lang.String rootDir,
|
|
long size,
|
|
<A HREF="../../rice/environment/Environment.html" title="class in rice.environment">Environment</A> env)</CODE>
|
|
|
|
<BR>
|
|
Builds a PersistentStorage given a root directory in which to
|
|
persist the data.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#PersistentStorage(rice.p2p.commonapi.IdFactory, java.lang.String, java.lang.String, long, boolean, rice.environment.Environment)">PersistentStorage</A></B>(<A HREF="../../rice/p2p/commonapi/IdFactory.html" title="interface in rice.p2p.commonapi">IdFactory</A> factory,
|
|
java.lang.String name,
|
|
java.lang.String rootDir,
|
|
long size,
|
|
boolean index,
|
|
<A HREF="../../rice/environment/Environment.html" title="class in rice.environment">Environment</A> env)</CODE>
|
|
|
|
<BR>
|
|
Builds a PersistentStorage given and an instance name
|
|
and a root directory in which to persist the data.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#PersistentStorage(rice.p2p.commonapi.IdFactory, java.lang.String, java.lang.String, long, rice.environment.Environment)">PersistentStorage</A></B>(<A HREF="../../rice/p2p/commonapi/IdFactory.html" title="interface in rice.p2p.commonapi">IdFactory</A> factory,
|
|
java.lang.String name,
|
|
java.lang.String rootDir,
|
|
long size,
|
|
<A HREF="../../rice/environment/Environment.html" title="class in rice.environment">Environment</A> env)</CODE>
|
|
|
|
<BR>
|
|
Builds a PersistentStorage given and an instance name
|
|
and a root directory in which to persist the data.</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> boolean</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#exists(rice.p2p.commonapi.Id)">exists</A></B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id)</CODE>
|
|
|
|
<BR>
|
|
Returns whether or not an object is present in the location <code>id</code>.</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="../../rice/persistence/PersistentStorage.html#flush(rice.Continuation)">flush</A></B>(<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</CODE>
|
|
|
|
<BR>
|
|
Method which is used to erase all data stored in the Catalog.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE> java.io.Serializable</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#getMetadata(rice.p2p.commonapi.Id)">getMetadata</A></B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id)</CODE>
|
|
|
|
<BR>
|
|
Returns the metadata associated with the provided object, or null if
|
|
no metadata exists.</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="../../rice/persistence/PersistentStorage.html#getName()">getName</A></B>()</CODE>
|
|
|
|
<BR>
|
|
Gets the name of this instance</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="../../rice/persistence/PersistentStorage.html#getObject(rice.p2p.commonapi.Id, rice.Continuation)">getObject</A></B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</CODE>
|
|
|
|
<BR>
|
|
Returns the object identified by the given id.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>protected <A HREF="../../rice/p2p/commonapi/IdRange.html" title="interface in rice.p2p.commonapi">IdRange</A></CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#getRangeForDirectory(java.io.File)">getRangeForDirectory</A></B>(java.io.File dir)</CODE>
|
|
|
|
<BR>
|
|
Utility function which returns the range of keys which a directory
|
|
corresponds to.</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="../../rice/persistence/PersistentStorage.html#getRoot()">getRoot</A></B>()</CODE>
|
|
|
|
<BR>
|
|
gets the root directory that the persistence Manager uses</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="../../rice/persistence/PersistentStorage.html#getSize()">getSize</A></B>()</CODE>
|
|
|
|
<BR>
|
|
Returns the number of Ids currently stored in the catalog</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="../../rice/persistence/PersistentStorage.html#getStorageSize()">getStorageSize</A></B>()</CODE>
|
|
|
|
<BR>
|
|
gets the amount of storage that the persistence Manager uses</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="../../rice/persistence/PersistentStorage.html#getTotalSize()">getTotalSize</A></B>()</CODE>
|
|
|
|
<BR>
|
|
Returns the total size of the stored data in bytes.The result
|
|
is returned via the receiveResult method on the provided
|
|
Continuation with an Integer representing the size.</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="../../rice/persistence/PersistentStorage.html#rename(rice.p2p.commonapi.Id, rice.p2p.commonapi.Id, rice.Continuation)">rename</A></B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> oldId,
|
|
<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> newId,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</CODE>
|
|
|
|
<BR>
|
|
Renames the given object to the new id.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE> <A HREF="../../rice/p2p/commonapi/IdSet.html" title="interface in rice.p2p.commonapi">IdSet</A></CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#scan()">scan</A></B>()</CODE>
|
|
|
|
<BR>
|
|
Return the objects identified by the given range of ids.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE> <A HREF="../../rice/p2p/commonapi/IdSet.html" title="interface in rice.p2p.commonapi">IdSet</A></CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#scan(rice.p2p.commonapi.IdRange)">scan</A></B>(<A HREF="../../rice/p2p/commonapi/IdRange.html" title="interface in rice.p2p.commonapi">IdRange</A> range)</CODE>
|
|
|
|
<BR>
|
|
Return the objects identified by the given range of ids.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE> java.util.SortedMap</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#scanMetadata()">scanMetadata</A></B>()</CODE>
|
|
|
|
<BR>
|
|
Returns a map which contains keys mapping ids to the associated
|
|
metadata.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE> java.util.SortedMap</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#scanMetadata(rice.p2p.commonapi.IdRange)">scanMetadata</A></B>(<A HREF="../../rice/p2p/commonapi/IdRange.html" title="interface in rice.p2p.commonapi">IdRange</A> range)</CODE>
|
|
|
|
<BR>
|
|
Returns a map which contains keys mapping ids to the associated
|
|
metadata.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE> java.util.SortedMap</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#scanMetadataValuesHead(java.lang.Object)">scanMetadataValuesHead</A></B>(java.lang.Object value)</CODE>
|
|
|
|
<BR>
|
|
Returns the submapping of ids which have metadata less than the provided
|
|
value.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE> java.util.SortedMap</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#scanMetadataValuesNull()">scanMetadataValuesNull</A></B>()</CODE>
|
|
|
|
<BR>
|
|
Returns the submapping of ids which have metadata null</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="../../rice/persistence/PersistentStorage.html#setMetadata(rice.p2p.commonapi.Id, java.io.Serializable, rice.Continuation)">setMetadata</A></B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id,
|
|
java.io.Serializable metadata,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</CODE>
|
|
|
|
<BR>
|
|
Updates the metadata stored under the given key to be the provided
|
|
value.</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="../../rice/persistence/PersistentStorage.html#setRoot(java.lang.String)">setRoot</A></B>(java.lang.String dir)</CODE>
|
|
|
|
<BR>
|
|
Sets the root directory that the persistence Manager uses</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="../../rice/persistence/PersistentStorage.html#setStorageSize(long)">setStorageSize</A></B>(long size)</CODE>
|
|
|
|
<BR>
|
|
Sets the amount of storage that the persistence Manager uses</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="../../rice/persistence/PersistentStorage.html#setTimer(rice.selector.Timer)">setTimer</A></B>(<A HREF="../../rice/selector/Timer.html" title="interface in rice.selector">Timer</A> timer)</CODE>
|
|
|
|
<BR>
|
|
Method which allows the persistence root to schedule an event which will tell it to
|
|
sync the metadata cached.</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="../../rice/persistence/PersistentStorage.html#store(rice.p2p.commonapi.Id, java.io.Serializable, java.io.Serializable, rice.Continuation)">store</A></B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id,
|
|
java.io.Serializable metadata,
|
|
java.io.Serializable obj,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</CODE>
|
|
|
|
<BR>
|
|
Makes the object persistent to disk and stored permanantly
|
|
|
|
If the object is already persistent, this method will
|
|
simply update the object's serialized image.</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="../../rice/persistence/PersistentStorage.html#unstore(rice.p2p.commonapi.Id, rice.Continuation)">unstore</A></B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</CODE>
|
|
|
|
<BR>
|
|
Request to remove the object from the list of persistend objects.</TD>
|
|
</TR>
|
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
|
<CODE>protected void</CODE></FONT></TD>
|
|
<TD><CODE><B><A HREF="../../rice/persistence/PersistentStorage.html#writeDirty()">writeDirty</A></B>()</CODE>
|
|
|
|
<BR>
|
|
Function which writes out all of the dirty metadata files and marks
|
|
them as clean.</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>
|
|
|
|
<!-- ============ FIELD DETAIL =========== -->
|
|
|
|
<A NAME="field_detail"><!-- --></A>
|
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
|
<B>Field Detail</B></FONT></TH>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<A NAME="PERSISTENCE_MAGIC_NUMBER"><!-- --></A><H3>
|
|
PERSISTENCE_MAGIC_NUMBER</H3>
|
|
<PRE>
|
|
public static final long <B>PERSISTENCE_MAGIC_NUMBER</B></PRE>
|
|
<DL>
|
|
<DD>Static variables defining the layout of the on-disk storage
|
|
<P>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.PERSISTENCE_MAGIC_NUMBER">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="PERSISTENCE_VERSION_2"><!-- --></A><H3>
|
|
PERSISTENCE_VERSION_2</H3>
|
|
<PRE>
|
|
public static final long <B>PERSISTENCE_VERSION_2</B></PRE>
|
|
<DL>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.PERSISTENCE_VERSION_2">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="PERSISTENCE_REVISION_2_0"><!-- --></A><H3>
|
|
PERSISTENCE_REVISION_2_0</H3>
|
|
<PRE>
|
|
public static final long <B>PERSISTENCE_REVISION_2_0</B></PRE>
|
|
<DL>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.PERSISTENCE_REVISION_2_0">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="PERSISTENCE_REVISION_2_1"><!-- --></A><H3>
|
|
PERSISTENCE_REVISION_2_1</H3>
|
|
<PRE>
|
|
public static final long <B>PERSISTENCE_REVISION_2_1</B></PRE>
|
|
<DL>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.PERSISTENCE_REVISION_2_1">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="BACKUP_DIRECTORY"><!-- --></A><H3>
|
|
BACKUP_DIRECTORY</H3>
|
|
<PRE>
|
|
public static final java.lang.String <B>BACKUP_DIRECTORY</B></PRE>
|
|
<DL>
|
|
<DD>Static variables which define the location of the storage root
|
|
<P>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.BACKUP_DIRECTORY">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="LOST_AND_FOUND_DIRECTORY"><!-- --></A><H3>
|
|
LOST_AND_FOUND_DIRECTORY</H3>
|
|
<PRE>
|
|
public static final java.lang.String <B>LOST_AND_FOUND_DIRECTORY</B></PRE>
|
|
<DL>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.LOST_AND_FOUND_DIRECTORY">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="METADATA_FILENAME"><!-- --></A><H3>
|
|
METADATA_FILENAME</H3>
|
|
<PRE>
|
|
public static final java.lang.String <B>METADATA_FILENAME</B></PRE>
|
|
<DL>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.METADATA_FILENAME">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="MAX_FILES"><!-- --></A><H3>
|
|
MAX_FILES</H3>
|
|
<PRE>
|
|
public static final int <B>MAX_FILES</B></PRE>
|
|
<DL>
|
|
<DD>The splitting factor, or the number of files in one directory
|
|
<P>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.MAX_FILES">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="MAX_DIRECTORIES"><!-- --></A><H3>
|
|
MAX_DIRECTORIES</H3>
|
|
<PRE>
|
|
public static final int <B>MAX_DIRECTORIES</B></PRE>
|
|
<DL>
|
|
<DD>The maximum number of subdirectories in a directory before splitting
|
|
<P>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.MAX_DIRECTORIES">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="METADATA_SYNC_TIME"><!-- --></A><H3>
|
|
METADATA_SYNC_TIME</H3>
|
|
<PRE>
|
|
public static final int <B>METADATA_SYNC_TIME</B></PRE>
|
|
<DL>
|
|
<DD>The amount of time before re-writing the metadata file
|
|
<P>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.METADATA_SYNC_TIME">Constant Field Values</A></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="ZERO_LENGTH_NAME"><!-- --></A><H3>
|
|
ZERO_LENGTH_NAME</H3>
|
|
<PRE>
|
|
public static final java.lang.String <B>ZERO_LENGTH_NAME</B></PRE>
|
|
<DL>
|
|
<DD>Special placeholder for the file whose name should be zero-length
|
|
<P>
|
|
<DL>
|
|
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#rice.persistence.PersistentStorage.ZERO_LENGTH_NAME">Constant Field Values</A></DL>
|
|
</DL>
|
|
|
|
<!-- ========= 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="PersistentStorage(rice.p2p.commonapi.IdFactory, java.lang.String, long, rice.environment.Environment)"><!-- --></A><H3>
|
|
PersistentStorage</H3>
|
|
<PRE>
|
|
public <B>PersistentStorage</B>(<A HREF="../../rice/p2p/commonapi/IdFactory.html" title="interface in rice.p2p.commonapi">IdFactory</A> factory,
|
|
java.lang.String rootDir,
|
|
long size,
|
|
<A HREF="../../rice/environment/Environment.html" title="class in rice.environment">Environment</A> env)
|
|
throws java.io.IOException</PRE>
|
|
<DL>
|
|
<DD>Builds a PersistentStorage given a root directory in which to
|
|
persist the data. Uses a default instance name.
|
|
<P>
|
|
<DL>
|
|
<DT><B>Parameters:</B><DD><CODE>factory</CODE> - The factory to use for creating Ids.<DD><CODE>rootDir</CODE> - The root directory of the persisted disk.<DD><CODE>size</CODE> - the size of the storage in bytes, or -1 for unlimited
|
|
<DT><B>Throws:</B>
|
|
<DD><CODE>java.io.IOException</CODE></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="PersistentStorage(rice.p2p.commonapi.IdFactory, java.lang.String, java.lang.String, long, rice.environment.Environment)"><!-- --></A><H3>
|
|
PersistentStorage</H3>
|
|
<PRE>
|
|
public <B>PersistentStorage</B>(<A HREF="../../rice/p2p/commonapi/IdFactory.html" title="interface in rice.p2p.commonapi">IdFactory</A> factory,
|
|
java.lang.String name,
|
|
java.lang.String rootDir,
|
|
long size,
|
|
<A HREF="../../rice/environment/Environment.html" title="class in rice.environment">Environment</A> env)
|
|
throws java.io.IOException</PRE>
|
|
<DL>
|
|
<DD>Builds a PersistentStorage given and an instance name
|
|
and a root directory in which to persist the data.
|
|
<P>
|
|
<DL>
|
|
<DT><B>Parameters:</B><DD><CODE>factory</CODE> - The factory to use for creating Ids.<DD><CODE>name</CODE> - the name of this instance<DD><CODE>rootDir</CODE> - The root directory of the persisted disk.<DD><CODE>size</CODE> - the size of the storage in bytes, or -1 for unlimited
|
|
<DT><B>Throws:</B>
|
|
<DD><CODE>java.io.IOException</CODE></DL>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="PersistentStorage(rice.p2p.commonapi.IdFactory, java.lang.String, java.lang.String, long, boolean, rice.environment.Environment)"><!-- --></A><H3>
|
|
PersistentStorage</H3>
|
|
<PRE>
|
|
public <B>PersistentStorage</B>(<A HREF="../../rice/p2p/commonapi/IdFactory.html" title="interface in rice.p2p.commonapi">IdFactory</A> factory,
|
|
java.lang.String name,
|
|
java.lang.String rootDir,
|
|
long size,
|
|
boolean index,
|
|
<A HREF="../../rice/environment/Environment.html" title="class in rice.environment">Environment</A> env)
|
|
throws java.io.IOException</PRE>
|
|
<DL>
|
|
<DD>Builds a PersistentStorage given and an instance name
|
|
and a root directory in which to persist the data.
|
|
<P>
|
|
<DL>
|
|
<DT><B>Parameters:</B><DD><CODE>factory</CODE> - The factory to use for creating Ids.<DD><CODE>name</CODE> - the name of this instance<DD><CODE>rootDir</CODE> - The root directory of the persisted disk.<DD><CODE>size</CODE> - the size of the storage in bytes, or -1 for unlimited<DD><CODE>index</CODE> - Whether or not to index the objects
|
|
<DT><B>Throws:</B>
|
|
<DD><CODE>java.io.IOException</CODE></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="setTimer(rice.selector.Timer)"><!-- --></A><H3>
|
|
setTimer</H3>
|
|
<PRE>
|
|
public void <B>setTimer</B>(<A HREF="../../rice/selector/Timer.html" title="interface in rice.selector">Timer</A> timer)</PRE>
|
|
<DL>
|
|
<DD>Method which allows the persistence root to schedule an event which will tell it to
|
|
sync the metadata cached. Should be called exactly once after the persistence root is
|
|
created.
|
|
<P>
|
|
<DD><DL>
|
|
</DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>timer</CODE> - The timer to use to schedule the events</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="rename(rice.p2p.commonapi.Id, rice.p2p.commonapi.Id, rice.Continuation)"><!-- --></A><H3>
|
|
rename</H3>
|
|
<PRE>
|
|
public void <B>rename</B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> oldId,
|
|
<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> newId,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</PRE>
|
|
<DL>
|
|
<DD>Renames the given object to the new id. This method is potentially faster
|
|
than store/cache and unstore/uncache.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#rename(rice.p2p.commonapi.Id, rice.p2p.commonapi.Id, rice.Continuation)">rename</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>oldId</CODE> - The id of the object in question.<DD><CODE>newId</CODE> - The new id of the object in question.<DD><CODE>c</CODE> - The command to run once the operation is complete</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="store(rice.p2p.commonapi.Id, java.io.Serializable, java.io.Serializable, rice.Continuation)"><!-- --></A><H3>
|
|
store</H3>
|
|
<PRE>
|
|
public void <B>store</B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id,
|
|
java.io.Serializable metadata,
|
|
java.io.Serializable obj,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</PRE>
|
|
<DL>
|
|
<DD>Makes the object persistent to disk and stored permanantly
|
|
|
|
If the object is already persistent, this method will
|
|
simply update the object's serialized image.
|
|
|
|
This is implemented atomically so that this may succeed
|
|
and store the new object, or fail and leave the previous
|
|
object intact.
|
|
|
|
This method completes by calling recieveResult() of the provided continuation
|
|
with the success or failure of the operation.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Storage.html#store(rice.p2p.commonapi.Id, java.io.Serializable, java.io.Serializable, rice.Continuation)">store</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Storage.html" title="interface in rice.persistence">Storage</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>obj</CODE> - The object to be made persistent.<DD><CODE>id</CODE> - The object's id.<DD><CODE>metadata</CODE> - The object's metadata<DD><CODE>c</CODE> - The command to run once the operation is complete</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="unstore(rice.p2p.commonapi.Id, rice.Continuation)"><!-- --></A><H3>
|
|
unstore</H3>
|
|
<PRE>
|
|
public void <B>unstore</B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</PRE>
|
|
<DL>
|
|
<DD>Request to remove the object from the list of persistend objects.
|
|
Delete the serialized image of the object from stable storage. If
|
|
necessary. If the object was not in the cached list in the first place,
|
|
nothing happens and <code>false</code> is returned.
|
|
|
|
This method also guarantees that the data on disk will remain consistent,
|
|
even after a crash by performing the delete atomically.
|
|
|
|
This method completes by calling recieveResult() of the provided continuation
|
|
with the success or failure of the operation.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Storage.html#unstore(rice.p2p.commonapi.Id, rice.Continuation)">unstore</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Storage.html" title="interface in rice.persistence">Storage</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>id</CODE> - The object's persistence id<DD><CODE>c</CODE> - The command to run once the operation is complete</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="exists(rice.p2p.commonapi.Id)"><!-- --></A><H3>
|
|
exists</H3>
|
|
<PRE>
|
|
public boolean <B>exists</B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id)</PRE>
|
|
<DL>
|
|
<DD>Returns whether or not an object is present in the location <code>id</code>.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#exists(rice.p2p.commonapi.Id)">exists</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>id</CODE> - The id of the object in question.
|
|
<DT><B>Returns:</B><DD>Whether or not an object is present at id.</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="getMetadata(rice.p2p.commonapi.Id)"><!-- --></A><H3>
|
|
getMetadata</H3>
|
|
<PRE>
|
|
public java.io.Serializable <B>getMetadata</B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id)</PRE>
|
|
<DL>
|
|
<DD>Returns the metadata associated with the provided object, or null if
|
|
no metadata exists. The metadata must be stored in memory, so this
|
|
operation is guaranteed to be fast and non-blocking.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#getMetadata(rice.p2p.commonapi.Id)">getMetadata</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>id</CODE> - The id for which the metadata is needed
|
|
<DT><B>Returns:</B><DD>The metadata, or null of non exists</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="setMetadata(rice.p2p.commonapi.Id, java.io.Serializable, rice.Continuation)"><!-- --></A><H3>
|
|
setMetadata</H3>
|
|
<PRE>
|
|
public void <B>setMetadata</B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id,
|
|
java.io.Serializable metadata,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</PRE>
|
|
<DL>
|
|
<DD>Updates the metadata stored under the given key to be the provided
|
|
value. As this may require a disk access, the requestor must
|
|
also provide a continuation to return the result to.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#setMetadata(rice.p2p.commonapi.Id, java.io.Serializable, rice.Continuation)">setMetadata</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>id</CODE> - The id for the metadata<DD><CODE>metadata</CODE> - The metadata to store<DD><CODE>c</CODE> - The command to run once the operation is complete</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="getObject(rice.p2p.commonapi.Id, rice.Continuation)"><!-- --></A><H3>
|
|
getObject</H3>
|
|
<PRE>
|
|
public void <B>getObject</B>(<A HREF="../../rice/p2p/commonapi/Id.html" title="interface in rice.p2p.commonapi">Id</A> id,
|
|
<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</PRE>
|
|
<DL>
|
|
<DD>Returns the object identified by the given id.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#getObject(rice.p2p.commonapi.Id, rice.Continuation)">getObject</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>id</CODE> - The id of the object in question.<DD><CODE>c</CODE> - The command to run once the operation is complete</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="scan(rice.p2p.commonapi.IdRange)"><!-- --></A><H3>
|
|
scan</H3>
|
|
<PRE>
|
|
public <A HREF="../../rice/p2p/commonapi/IdSet.html" title="interface in rice.p2p.commonapi">IdSet</A> <B>scan</B>(<A HREF="../../rice/p2p/commonapi/IdRange.html" title="interface in rice.p2p.commonapi">IdRange</A> range)</PRE>
|
|
<DL>
|
|
<DD>Return the objects identified by the given range of ids. The IdSet
|
|
returned contains the Ids of the stored objects. The range is
|
|
partially inclusive, the lower range is inclusive, and the upper
|
|
exclusive.
|
|
|
|
|
|
NOTE: This method blocks so if the behavior of this method changes and
|
|
uses the disk, this method may be deprecated.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#scan(rice.p2p.commonapi.IdRange)">scan</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>range</CODE> - The range to query
|
|
<DT><B>Returns:</B><DD>The idset containing the keys</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="scan()"><!-- --></A><H3>
|
|
scan</H3>
|
|
<PRE>
|
|
public <A HREF="../../rice/p2p/commonapi/IdSet.html" title="interface in rice.p2p.commonapi">IdSet</A> <B>scan</B>()</PRE>
|
|
<DL>
|
|
<DD>Return the objects identified by the given range of ids. The IdSet
|
|
returned contains the Ids of the stored objects. The range is
|
|
partially inclusive, the lower range is inclusive, and the upper
|
|
exclusive.
|
|
|
|
NOTE: This method blocks so if the behavior of this method changes and
|
|
uses the disk, this method may be deprecated.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#scan()">scan</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
|
|
<DT><B>Returns:</B><DD>The idset containing the keys</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="scanMetadata(rice.p2p.commonapi.IdRange)"><!-- --></A><H3>
|
|
scanMetadata</H3>
|
|
<PRE>
|
|
public java.util.SortedMap <B>scanMetadata</B>(<A HREF="../../rice/p2p/commonapi/IdRange.html" title="interface in rice.p2p.commonapi">IdRange</A> range)</PRE>
|
|
<DL>
|
|
<DD>Returns a map which contains keys mapping ids to the associated
|
|
metadata.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#scanMetadata(rice.p2p.commonapi.IdRange)">scanMetadata</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>range</CODE> - The range to query
|
|
<DT><B>Returns:</B><DD>The map containing the keys</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="scanMetadata()"><!-- --></A><H3>
|
|
scanMetadata</H3>
|
|
<PRE>
|
|
public java.util.SortedMap <B>scanMetadata</B>()</PRE>
|
|
<DL>
|
|
<DD>Returns a map which contains keys mapping ids to the associated
|
|
metadata.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#scanMetadata()">scanMetadata</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
|
|
<DT><B>Returns:</B><DD>The treemap mapping ids to metadata</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="scanMetadataValuesHead(java.lang.Object)"><!-- --></A><H3>
|
|
scanMetadataValuesHead</H3>
|
|
<PRE>
|
|
public java.util.SortedMap <B>scanMetadataValuesHead</B>(java.lang.Object value)</PRE>
|
|
<DL>
|
|
<DD>Returns the submapping of ids which have metadata less than the provided
|
|
value.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#scanMetadataValuesHead(java.lang.Object)">scanMetadataValuesHead</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>value</CODE> - The maximal metadata value
|
|
<DT><B>Returns:</B><DD>The submapping</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="scanMetadataValuesNull()"><!-- --></A><H3>
|
|
scanMetadataValuesNull</H3>
|
|
<PRE>
|
|
public java.util.SortedMap <B>scanMetadataValuesNull</B>()</PRE>
|
|
<DL>
|
|
<DD>Returns the submapping of ids which have metadata null
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#scanMetadataValuesNull()">scanMetadataValuesNull</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
|
|
<DT><B>Returns:</B><DD>The submapping</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="getTotalSize()"><!-- --></A><H3>
|
|
getTotalSize</H3>
|
|
<PRE>
|
|
public long <B>getTotalSize</B>()</PRE>
|
|
<DL>
|
|
<DD>Returns the total size of the stored data in bytes.The result
|
|
is returned via the receiveResult method on the provided
|
|
Continuation with an Integer representing the size.
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#getTotalSize()">getTotalSize</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>c</CODE> - The command to run once the operation is complete
|
|
<DT><B>Returns:</B><DD>The total size, in bytes, of data stored.</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="getSize()"><!-- --></A><H3>
|
|
getSize</H3>
|
|
<PRE>
|
|
public int <B>getSize</B>()</PRE>
|
|
<DL>
|
|
<DD>Returns the number of Ids currently stored in the catalog
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#getSize()">getSize</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
|
|
<DT><B>Returns:</B><DD>The number of ids in the catalog</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="flush(rice.Continuation)"><!-- --></A><H3>
|
|
flush</H3>
|
|
<PRE>
|
|
public void <B>flush</B>(<A HREF="../../rice/Continuation.html" title="interface in rice">Continuation</A> c)</PRE>
|
|
<DL>
|
|
<DD>Method which is used to erase all data stored in the Catalog.
|
|
Use this method with care!
|
|
<P>
|
|
<DD><DL>
|
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../rice/persistence/Catalog.html#flush(rice.Continuation)">flush</A></CODE> in interface <CODE><A HREF="../../rice/persistence/Catalog.html" title="interface in rice.persistence">Catalog</A></CODE></DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>c</CODE> - The command to run once done</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="writeDirty()"><!-- --></A><H3>
|
|
writeDirty</H3>
|
|
<PRE>
|
|
protected void <B>writeDirty</B>()</PRE>
|
|
<DL>
|
|
<DD>Function which writes out all of the dirty metadata files and marks
|
|
them as clean.
|
|
<P>
|
|
<DD><DL>
|
|
</DL>
|
|
</DD>
|
|
<DD><DL>
|
|
</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="getRangeForDirectory(java.io.File)"><!-- --></A><H3>
|
|
getRangeForDirectory</H3>
|
|
<PRE>
|
|
protected <A HREF="../../rice/p2p/commonapi/IdRange.html" title="interface in rice.p2p.commonapi">IdRange</A> <B>getRangeForDirectory</B>(java.io.File dir)</PRE>
|
|
<DL>
|
|
<DD>Utility function which returns the range of keys which a directory
|
|
corresponds to.
|
|
<P>
|
|
<DD><DL>
|
|
</DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>dir</CODE> - The directory</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="setRoot(java.lang.String)"><!-- --></A><H3>
|
|
setRoot</H3>
|
|
<PRE>
|
|
public boolean <B>setRoot</B>(java.lang.String dir)</PRE>
|
|
<DL>
|
|
<DD>Sets the root directory that the persistence Manager uses
|
|
<P>
|
|
<DD><DL>
|
|
</DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>dir</CODE> - the String representing the directory to use
|
|
<DT><B>Returns:</B><DD>boolean, true if the operation succeeds false if it doesn't</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="getRoot()"><!-- --></A><H3>
|
|
getRoot</H3>
|
|
<PRE>
|
|
public java.lang.String <B>getRoot</B>()</PRE>
|
|
<DL>
|
|
<DD>gets the root directory that the persistence Manager uses
|
|
<P>
|
|
<DD><DL>
|
|
</DL>
|
|
</DD>
|
|
<DD><DL>
|
|
|
|
<DT><B>Returns:</B><DD>String the directory for the root</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="getStorageSize()"><!-- --></A><H3>
|
|
getStorageSize</H3>
|
|
<PRE>
|
|
public long <B>getStorageSize</B>()</PRE>
|
|
<DL>
|
|
<DD>gets the amount of storage that the persistence Manager uses
|
|
<P>
|
|
<DD><DL>
|
|
</DL>
|
|
</DD>
|
|
<DD><DL>
|
|
|
|
<DT><B>Returns:</B><DD>int the amount of storage in bytes allocated for use</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="setStorageSize(long)"><!-- --></A><H3>
|
|
setStorageSize</H3>
|
|
<PRE>
|
|
public boolean <B>setStorageSize</B>(long size)</PRE>
|
|
<DL>
|
|
<DD>Sets the amount of storage that the persistence Manager uses
|
|
<P>
|
|
<DD><DL>
|
|
</DL>
|
|
</DD>
|
|
<DD><DL>
|
|
<DT><B>Parameters:</B><DD><CODE>size</CODE> - the amount of storage available to use in bytes
|
|
<DT><B>Returns:</B><DD>boolean, true if the operation succeeds false if it doesn't</DL>
|
|
</DD>
|
|
</DL>
|
|
<HR>
|
|
|
|
<A NAME="getName()"><!-- --></A><H3>
|
|
getName</H3>
|
|
<PRE>
|
|
public java.lang.String <B>getName</B>()</PRE>
|
|
<DL>
|
|
<DD>Gets the name of this instance
|
|
<P>
|
|
<DD><DL>
|
|
</DL>
|
|
</DD>
|
|
<DD><DL>
|
|
|
|
<DT><B>Returns:</B><DD>String the name of the instance</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="class-use/PersistentStorage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </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>
|
|
Rice Pastry API</EM>
|
|
</TD>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
|
<A HREF="../../rice/persistence/MemoryStorage.html" title="class in rice.persistence"><B>PREV CLASS</B></A>
|
|
<A HREF="../../rice/persistence/Storage.html" title="interface in rice.persistence"><B>NEXT CLASS</B></A></FONT></TD>
|
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
|
<A HREF="../../index.html?rice/persistence/PersistentStorage.html" target="_top"><B>FRAMES</B></A>
|
|
<A HREF="PersistentStorage.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="#field_summary">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: <A HREF="#field_detail">FIELD</A> | <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>
|
|
<i>Copyright © 2001-2005 - Rice Pastry.</i>
|
|
</BODY>
|
|
</HTML>
|