blob: f2c96def388b4ffe6c57f6e706126570c9ba8511 [file] [log] [blame]
<!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_21) on Wed Aug 25 21:59:35 EDT 2010 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
ConcurrentDataCache (OpenJPA Parent POM 2.0.1 API)
</TITLE>
<META NAME="date" CONTENT="2010-08-25">
<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="ConcurrentDataCache (OpenJPA Parent POM 2.0.1 API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ConcurrentDataCache.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/openjpa/datacache/ClearableScheduler.html" title="class in org.apache.openjpa.datacache"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/openjpa/datacache/ConcurrentQueryCache.html" title="class in org.apache.openjpa.datacache"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/apache/openjpa/datacache/ConcurrentDataCache.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ConcurrentDataCache.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.openjpa.datacache.AbstractDataCache">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<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">
org.apache.openjpa.datacache</FONT>
<BR>
Class ConcurrentDataCache</H2>
<PRE>
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html" title="class in org.apache.openjpa.lib.util.concurrent">org.apache.openjpa.lib.util.concurrent.AbstractConcurrentEventManager</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">org.apache.openjpa.datacache.AbstractDataCache</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.openjpa.datacache.ConcurrentDataCache</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</A>, <A HREF="../../../../org/apache/openjpa/datacache/DataCache.html" title="interface in org.apache.openjpa.datacache">DataCache</A>, <A HREF="../../../../org/apache/openjpa/event/RemoteCommitListener.html" title="interface in org.apache.openjpa.event">RemoteCommitListener</A>, <A HREF="../../../../org/apache/openjpa/lib/conf/Configurable.html" title="interface in org.apache.openjpa.lib.conf">Configurable</A>, <A HREF="../../../../org/apache/openjpa/lib/util/Clearable.html" title="interface in org.apache.openjpa.lib.util">Clearable</A>, <A HREF="../../../../org/apache/openjpa/lib/util/Closeable.html" title="interface in org.apache.openjpa.lib.util">Closeable</A>, <A HREF="../../../../org/apache/openjpa/lib/util/EventManager.html" title="interface in org.apache.openjpa.lib.util">EventManager</A></DD>
</DL>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../org/apache/openjpa/datacache/PartitionedDataCache.html" title="class in org.apache.openjpa.datacache">PartitionedDataCache</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>ConcurrentDataCache</B><DT>extends <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A><DT>implements <A HREF="../../../../org/apache/openjpa/event/RemoteCommitListener.html" title="interface in org.apache.openjpa.event">RemoteCommitListener</A></DL>
</PRE>
<P>
A <A HREF="../../../../org/apache/openjpa/datacache/DataCache.html" title="interface in org.apache.openjpa.datacache"><CODE>DataCache</CODE></A> implementation that is optimized for concurrent
access. When the cache fills up, values to remove from cache are chosen
randomly. Due to race conditions, it is possible that a get call might not
return a cached instance if that instance is being transferred between
internal datastructures.
<P>
<P>
<DL>
<DT><B>Since:</B></DT>
<DD>0.4.0</DD>
<DT><B>See Also:</B><DD><A HREF="../../../../serialized-form.html#org.apache.openjpa.datacache.ConcurrentDataCache">Serialized Form</A></DL>
<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>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.openjpa.datacache.AbstractDataCache"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.openjpa.datacache.<A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#_excludedTypes">_excludedTypes</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#_includedTypes">_includedTypes</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#conf">conf</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#log">log</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#stats">stats</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.openjpa.lib.util.concurrent.AbstractConcurrentEventManager"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.openjpa.lib.util.concurrent.<A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html" title="class in org.apache.openjpa.lib.util.concurrent">AbstractConcurrentEventManager</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#_listeners">_listeners</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.openjpa.datacache.DataCache"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface org.apache.openjpa.datacache.<A HREF="../../../../org/apache/openjpa/datacache/DataCache.html" title="interface in org.apache.openjpa.datacache">DataCache</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html#NAME_DEFAULT">NAME_DEFAULT</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== 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="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#ConcurrentDataCache()">ConcurrentDataCache</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== 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>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#clearInternal()">clearInternal</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Clear the cache.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/openjpa/util/CacheMap.html" title="class in org.apache.openjpa.util">CacheMap</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#getCacheMap()">getCacheMap</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the underlying <A HREF="../../../../org/apache/openjpa/util/CacheMap.html" title="class in org.apache.openjpa.util"><CODE>CacheMap</CODE></A> that this cache is using.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#getCacheSize()">getCacheSize</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the maximum number of unpinned objects to keep hard
references to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../org/apache/openjpa/datacache/DataCachePCData.html" title="interface in org.apache.openjpa.datacache">DataCachePCData</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#getInternal(java.lang.Object)">getInternal</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the object for the given oid.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#getSoftReferenceSize()">getSoftReferenceSize</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the maximum number of unpinned objects to keep soft
references to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#initialize(org.apache.openjpa.datacache.DataCacheManager)">initialize</A></B>(<A HREF="../../../../org/apache/openjpa/datacache/DataCacheManager.html" title="interface in org.apache.openjpa.datacache">DataCacheManager</A>&nbsp;mgr)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize any resources associated with the given
<A HREF="../../../../org/apache/openjpa/datacache/DataCacheManager.html" title="interface in org.apache.openjpa.datacache"><CODE>DataCacheManager</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../org/apache/openjpa/util/CacheMap.html" title="class in org.apache.openjpa.util">CacheMap</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#newCacheMap()">newCacheMap</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the map to use as an internal cache; entry expirations must
invoke <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#keyRemoved(java.lang.Object, boolean)"><CODE>AbstractDataCache.keyRemoved(java.lang.Object, boolean)</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#pinInternal(java.lang.Object)">pinInternal</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Pin an object to the cache.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../org/apache/openjpa/datacache/DataCachePCData.html" title="interface in org.apache.openjpa.datacache">DataCachePCData</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#putInternal(java.lang.Object, org.apache.openjpa.datacache.DataCachePCData)">putInternal</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key,
<A HREF="../../../../org/apache/openjpa/datacache/DataCachePCData.html" title="interface in org.apache.openjpa.datacache">DataCachePCData</A>&nbsp;pc)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the given object to the cache, returning the old object under the
given oid.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#removeAllInternal(java.lang.Class, boolean)">removeAllInternal</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A>&lt;?&gt;&nbsp;cls,
boolean&nbsp;subs)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evict objects in cache by class.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../org/apache/openjpa/datacache/DataCachePCData.html" title="interface in org.apache.openjpa.datacache">DataCachePCData</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#removeInternal(java.lang.Object)">removeInternal</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Remove the object under the given oid from the cache.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#setCacheSize(int)">setCacheSize</A></B>(int&nbsp;size)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the maximum number of unpinned objects to keep hard
references to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#setSoftReferenceSize(int)">setSoftReferenceSize</A></B>(int&nbsp;size)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the maximum number of unpinned objects to keep soft
references to.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#unpinAll(java.lang.Class, boolean)">unpinAll</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A>&lt;?&gt;&nbsp;cls,
boolean&nbsp;subs)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Unpin all oids associaed with the given type from the cache.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#unpinInternal(java.lang.Object)">unpinInternal</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Unpin an object from the cache.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#writeLock()">writeLock</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Obtain a write lock on the cache.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/datacache/ConcurrentDataCache.html#writeUnlock()">writeUnlock</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Release the write lock on the cache.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.openjpa.datacache.AbstractDataCache"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.openjpa.datacache.<A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#addExpirationListener(org.apache.openjpa.datacache.ExpirationListener)">addExpirationListener</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#afterCommit(org.apache.openjpa.event.RemoteCommitEvent)">afterCommit</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#clear()">clear</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#close()">close</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#close(boolean)">close</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#commit(java.util.Collection, java.util.Collection, java.util.Collection, java.util.Collection)">commit</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#contains(java.lang.Object)">contains</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#containsAll(java.util.Collection)">containsAll</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#endConfiguration()">endConfiguration</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#fireEvent(java.lang.Object, java.lang.Object)">fireEvent</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#get(java.lang.Object)">get</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getAll(java.util.List)">getAll</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getEnableStatistics()">getEnableStatistics</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getEvictionSchedule()">getEvictionSchedule</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getExcludedTypes()">getExcludedTypes</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getName()">getName</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getPartition(java.lang.String, boolean)">getPartition</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getPartitionNames()">getPartitionNames</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getStatistics()">getStatistics</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getTypes()">getTypes</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#isClosed()">isClosed</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#isPartitioned()">isPartitioned</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#keyRemoved(java.lang.Object, boolean)">keyRemoved</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#pin(java.lang.Object)">pin</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#pinAll(java.lang.Class, boolean)">pinAll</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#pinAll(java.util.Collection)">pinAll</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#put(org.apache.openjpa.datacache.DataCachePCData)">put</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#putAllInternal(java.util.Collection)">putAllInternal</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#recacheUpdates()">recacheUpdates</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#remove(java.lang.Object)">remove</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#removeAll(java.lang.Class, boolean)">removeAll</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#removeAll(java.util.Collection)">removeAll</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#removeAllInternal(java.util.Collection)">removeAllInternal</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#removeAllTypeNamesInternal(java.util.Collection)">removeAllTypeNamesInternal</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#removeExpirationListener(org.apache.openjpa.datacache.ExpirationListener)">removeExpirationListener</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#setConfiguration(org.apache.openjpa.lib.conf.Configuration)">setConfiguration</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#setEnableStatistics(boolean)">setEnableStatistics</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#setEvictionSchedule(java.lang.String)">setEvictionSchedule</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#setExcludedTypes(java.util.Set)">setExcludedTypes</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#setExcludedTypes(java.lang.String)">setExcludedTypes</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#setName(java.lang.String)">setName</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#setTypes(java.util.Set)">setTypes</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#setTypes(java.lang.String)">setTypes</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#startConfiguration()">startConfiguration</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#toString()">toString</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#unpin(java.lang.Object)">unpin</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#unpinAll(java.util.Collection)">unpinAll</A>, <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#update(org.apache.openjpa.datacache.DataCachePCData)">update</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.openjpa.lib.util.concurrent.AbstractConcurrentEventManager"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.openjpa.lib.util.concurrent.<A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html" title="class in org.apache.openjpa.lib.util.concurrent">AbstractConcurrentEventManager</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#addListener(java.lang.Object)">addListener</A>, <A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#fireEvent(java.lang.Object)">fireEvent</A>, <A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#getListeners()">getListeners</A>, <A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#hasListener(java.lang.Object)">hasListener</A>, <A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#hasListeners()">hasListeners</A>, <A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#isFailFast()">isFailFast</A>, <A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#newListenerCollection()">newListenerCollection</A>, <A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#removeListener(java.lang.Object)">removeListener</A>, <A HREF="../../../../org/apache/openjpa/lib/util/concurrent/AbstractConcurrentEventManager.html#setFailFast(boolean)">setFailFast</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<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.<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.openjpa.event.RemoteCommitListener"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from interface org.apache.openjpa.event.<A HREF="../../../../org/apache/openjpa/event/RemoteCommitListener.html" title="interface in org.apache.openjpa.event">RemoteCommitListener</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/openjpa/event/RemoteCommitListener.html#afterCommit(org.apache.openjpa.event.RemoteCommitEvent)">afterCommit</A>, <A HREF="../../../../org/apache/openjpa/event/RemoteCommitListener.html#close()">close</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<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="ConcurrentDataCache()"><!-- --></A><H3>
ConcurrentDataCache</H3>
<PRE>
public <B>ConcurrentDataCache</B>()</PRE>
<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="getCacheMap()"><!-- --></A><H3>
getCacheMap</H3>
<PRE>
public <A HREF="../../../../org/apache/openjpa/util/CacheMap.html" title="class in org.apache.openjpa.util">CacheMap</A> <B>getCacheMap</B>()</PRE>
<DL>
<DD>Returns the underlying <A HREF="../../../../org/apache/openjpa/util/CacheMap.html" title="class in org.apache.openjpa.util"><CODE>CacheMap</CODE></A> that this cache is using.
This is not an unmodifiable view on the map, so care should be taken
with this reference. Implementations should probably not modify the
contents of the cache, but should only use this reference to
obtain cache metrics.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setCacheSize(int)"><!-- --></A><H3>
setCacheSize</H3>
<PRE>
public void <B>setCacheSize</B>(int&nbsp;size)</PRE>
<DL>
<DD>Sets the maximum number of unpinned objects to keep hard
references to. If the map contains more unpinned objects than
<code>size</code>, then this method will result in the cache
flushing old values.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getCacheSize()"><!-- --></A><H3>
getCacheSize</H3>
<PRE>
public int <B>getCacheSize</B>()</PRE>
<DL>
<DD>Returns the maximum number of unpinned objects to keep hard
references to.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="setSoftReferenceSize(int)"><!-- --></A><H3>
setSoftReferenceSize</H3>
<PRE>
public void <B>setSoftReferenceSize</B>(int&nbsp;size)</PRE>
<DL>
<DD>Sets the maximum number of unpinned objects to keep soft
references to. If the map contains more soft references than
<code>size</code>, then this method will result in the cache
flushing values.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getSoftReferenceSize()"><!-- --></A><H3>
getSoftReferenceSize</H3>
<PRE>
public int <B>getSoftReferenceSize</B>()</PRE>
<DL>
<DD>Returns the maximum number of unpinned objects to keep soft
references to. Defaults to <code>-1</code>.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="initialize(org.apache.openjpa.datacache.DataCacheManager)"><!-- --></A><H3>
initialize</H3>
<PRE>
public void <B>initialize</B>(<A HREF="../../../../org/apache/openjpa/datacache/DataCacheManager.html" title="interface in org.apache.openjpa.datacache">DataCacheManager</A>&nbsp;mgr)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html#initialize(org.apache.openjpa.datacache.DataCacheManager)">DataCache</A></CODE></B></DD>
<DD>Initialize any resources associated with the given
<A HREF="../../../../org/apache/openjpa/datacache/DataCacheManager.html" title="interface in org.apache.openjpa.datacache"><CODE>DataCacheManager</CODE></A>.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html#initialize(org.apache.openjpa.datacache.DataCacheManager)">initialize</A></CODE> in interface <CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html" title="interface in org.apache.openjpa.datacache">DataCache</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#initialize(org.apache.openjpa.datacache.DataCacheManager)">initialize</A></CODE> in class <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="unpinAll(java.lang.Class, boolean)"><!-- --></A><H3>
unpinAll</H3>
<PRE>
public void <B>unpinAll</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A>&lt;?&gt;&nbsp;cls,
boolean&nbsp;subs)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html#unpinAll(java.lang.Class, boolean)">DataCache</A></CODE></B></DD>
<DD>Unpin all oids associaed with the given type from the cache.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html#unpinAll(java.lang.Class, boolean)">unpinAll</A></CODE> in interface <CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html" title="interface in org.apache.openjpa.datacache">DataCache</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#unpinAll(java.lang.Class, boolean)">unpinAll</A></CODE> in class <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></CODE></DL>
</DD>
<DD><DL>
<DD><CODE>subs</CODE> - Whether to include subclasses.</DL>
</DD>
</DL>
<HR>
<A NAME="writeLock()"><!-- --></A><H3>
writeLock</H3>
<PRE>
public void <B>writeLock</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html#writeLock()">DataCache</A></CODE></B></DD>
<DD>Obtain a write lock on the cache.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html#writeLock()">writeLock</A></CODE> in interface <CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html" title="interface in org.apache.openjpa.datacache">DataCache</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="writeUnlock()"><!-- --></A><H3>
writeUnlock</H3>
<PRE>
public void <B>writeUnlock</B>()</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html#writeUnlock()">DataCache</A></CODE></B></DD>
<DD>Release the write lock on the cache.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html#writeUnlock()">writeUnlock</A></CODE> in interface <CODE><A HREF="../../../../org/apache/openjpa/datacache/DataCache.html" title="interface in org.apache.openjpa.datacache">DataCache</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="newCacheMap()"><!-- --></A><H3>
newCacheMap</H3>
<PRE>
protected <A HREF="../../../../org/apache/openjpa/util/CacheMap.html" title="class in org.apache.openjpa.util">CacheMap</A> <B>newCacheMap</B>()</PRE>
<DL>
<DD>Return the map to use as an internal cache; entry expirations must
invoke <A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#keyRemoved(java.lang.Object, boolean)"><CODE>AbstractDataCache.keyRemoved(java.lang.Object, boolean)</CODE></A>.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getInternal(java.lang.Object)"><!-- --></A><H3>
getInternal</H3>
<PRE>
protected <A HREF="../../../../org/apache/openjpa/datacache/DataCachePCData.html" title="interface in org.apache.openjpa.datacache">DataCachePCData</A> <B>getInternal</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getInternal(java.lang.Object)">AbstractDataCache</A></CODE></B></DD>
<DD>Return the object for the given oid.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#getInternal(java.lang.Object)">getInternal</A></CODE> in class <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="putInternal(java.lang.Object, org.apache.openjpa.datacache.DataCachePCData)"><!-- --></A><H3>
putInternal</H3>
<PRE>
protected <A HREF="../../../../org/apache/openjpa/datacache/DataCachePCData.html" title="interface in org.apache.openjpa.datacache">DataCachePCData</A> <B>putInternal</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key,
<A HREF="../../../../org/apache/openjpa/datacache/DataCachePCData.html" title="interface in org.apache.openjpa.datacache">DataCachePCData</A>&nbsp;pc)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#putInternal(java.lang.Object, org.apache.openjpa.datacache.DataCachePCData)">AbstractDataCache</A></CODE></B></DD>
<DD>Add the given object to the cache, returning the old object under the
given oid.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#putInternal(java.lang.Object, org.apache.openjpa.datacache.DataCachePCData)">putInternal</A></CODE> in class <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="removeInternal(java.lang.Object)"><!-- --></A><H3>
removeInternal</H3>
<PRE>
protected <A HREF="../../../../org/apache/openjpa/datacache/DataCachePCData.html" title="interface in org.apache.openjpa.datacache">DataCachePCData</A> <B>removeInternal</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#removeInternal(java.lang.Object)">AbstractDataCache</A></CODE></B></DD>
<DD>Remove the object under the given oid from the cache.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#removeInternal(java.lang.Object)">removeInternal</A></CODE> in class <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="removeAllInternal(java.lang.Class, boolean)"><!-- --></A><H3>
removeAllInternal</H3>
<PRE>
protected void <B>removeAllInternal</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</A>&lt;?&gt;&nbsp;cls,
boolean&nbsp;subs)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#removeAllInternal(java.lang.Class, boolean)">AbstractDataCache</A></CODE></B></DD>
<DD>Evict objects in cache by class.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#removeAllInternal(java.lang.Class, boolean)">removeAllInternal</A></CODE> in class <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="clearInternal()"><!-- --></A><H3>
clearInternal</H3>
<PRE>
protected void <B>clearInternal</B>()</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#clearInternal()">AbstractDataCache</A></CODE></B></DD>
<DD>Clear the cache.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#clearInternal()">clearInternal</A></CODE> in class <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="pinInternal(java.lang.Object)"><!-- --></A><H3>
pinInternal</H3>
<PRE>
protected boolean <B>pinInternal</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#pinInternal(java.lang.Object)">AbstractDataCache</A></CODE></B></DD>
<DD>Pin an object to the cache.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#pinInternal(java.lang.Object)">pinInternal</A></CODE> in class <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="unpinInternal(java.lang.Object)"><!-- --></A><H3>
unpinInternal</H3>
<PRE>
protected boolean <B>unpinInternal</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;key)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#unpinInternal(java.lang.Object)">AbstractDataCache</A></CODE></B></DD>
<DD>Unpin an object from the cache.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html#unpinInternal(java.lang.Object)">unpinInternal</A></CODE> in class <CODE><A HREF="../../../../org/apache/openjpa/datacache/AbstractDataCache.html" title="class in org.apache.openjpa.datacache">AbstractDataCache</A></CODE></DL>
</DD>
<DD><DL>
</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>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ConcurrentDataCache.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/openjpa/datacache/ClearableScheduler.html" title="class in org.apache.openjpa.datacache"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/openjpa/datacache/ConcurrentQueryCache.html" title="class in org.apache.openjpa.datacache"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/apache/openjpa/datacache/ConcurrentDataCache.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ConcurrentDataCache.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.openjpa.datacache.AbstractDataCache">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2006-2010 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>