blob: 9ebc38be2eb273208e83a152fc4b678ecfde2334 [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_65) on Mon Jun 01 22:43:59 CEST 2015 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
LockManager (OpenJPA Parent POM 2.4.0 API)
</TITLE>
<META NAME="date" CONTENT="2015-06-01">
<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="LockManager (OpenJPA Parent POM 2.4.0 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/LockManager.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/kernel/LockLevels.html" title="interface in org.apache.openjpa.kernel"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/openjpa/kernel/LockScopes.html" title="interface in org.apache.openjpa.kernel"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/apache/openjpa/kernel/LockManager.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="LockManager.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;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&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.kernel</FONT>
<BR>
Interface LockManager</H2>
<DL>
<DT><B>All Superinterfaces:</B> <DD><A HREF="../../../../org/apache/openjpa/lib/util/Closeable.html" title="interface in org.apache.openjpa.lib.util">Closeable</A>, <A HREF="../../../../org/apache/openjpa/kernel/LockLevels.html" title="interface in org.apache.openjpa.kernel">LockLevels</A></DD>
</DL>
<DL>
<DT><B>All Known Subinterfaces:</B> <DD><A HREF="../../../../org/apache/openjpa/jdbc/kernel/JDBCLockManager.html" title="interface in org.apache.openjpa.jdbc.kernel">JDBCLockManager</A></DD>
</DL>
<DL>
<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../org/apache/openjpa/kernel/AbstractLockManager.html" title="class in org.apache.openjpa.kernel">AbstractLockManager</A>, <A HREF="../../../../org/apache/openjpa/jdbc/kernel/MixedLockManager.html" title="class in org.apache.openjpa.jdbc.kernel">MixedLockManager</A>, <A HREF="../../../../org/apache/openjpa/kernel/NoneLockManager.html" title="class in org.apache.openjpa.kernel">NoneLockManager</A>, <A HREF="../../../../org/apache/openjpa/jdbc/kernel/PessimisticLockManager.html" title="class in org.apache.openjpa.jdbc.kernel">PessimisticLockManager</A>, <A HREF="../../../../org/apache/openjpa/kernel/VersionLockManager.html" title="class in org.apache.openjpa.kernel">VersionLockManager</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public interface <B>LockManager</B><DT>extends <A HREF="../../../../org/apache/openjpa/lib/util/Closeable.html" title="interface in org.apache.openjpa.lib.util">Closeable</A>, <A HREF="../../../../org/apache/openjpa/kernel/LockLevels.html" title="interface in org.apache.openjpa.kernel">LockLevels</A></DL>
</PRE>
<P>
Handles obtaining and releasing locks on objects. The lock manager
generally does not have to worry about synchronization, as the context is
responsible for synchronizing the calls it makes to the lock manager.
<P>
<P>
<DL>
<DT><B>Author:</B></DT>
<DD>Marc Prud'hommeaux</DD>
</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.kernel.LockLevels"><!-- --></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.kernel.<A HREF="../../../../org/apache/openjpa/kernel/LockLevels.html" title="interface in org.apache.openjpa.kernel">LockLevels</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/openjpa/kernel/LockLevels.html#LOCK_NONE">LOCK_NONE</A>, <A HREF="../../../../org/apache/openjpa/kernel/LockLevels.html#LOCK_READ">LOCK_READ</A>, <A HREF="../../../../org/apache/openjpa/kernel/LockLevels.html#LOCK_WRITE">LOCK_WRITE</A></CODE></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>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/openjpa/kernel/LockManager.html#beginTransaction()">beginTransaction</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Notification that a transaction is beginning.</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/kernel/LockManager.html#close()">close</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Free any resources.</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/kernel/LockManager.html#endTransaction()">endTransaction</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Notification that the current transaction has ended.</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/kernel/LockManager.html#getLockLevel(org.apache.openjpa.kernel.OpenJPAStateManager)">getLockLevel</A></B>(<A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the lock level of the specified instance, or
<A HREF="../../../../org/apache/openjpa/kernel/LockLevels.html#LOCK_NONE"><CODE>LockLevels.LOCK_NONE</CODE></A> if not locked.</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/kernel/LockManager.html#lock(org.apache.openjpa.kernel.OpenJPAStateManager, int, int, java.lang.Object)">lock</A></B>(<A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
int&nbsp;level,
int&nbsp;timeout,
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;sdata)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Obtain a lock on the specified object.</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/kernel/LockManager.html#lockAll(java.util.Collection, int, int, java.lang.Object)">lockAll</A></B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</A>&nbsp;sms,
int&nbsp;level,
int&nbsp;timeout,
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;sdata)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Obtain locks on the specified objects.</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/kernel/LockManager.html#refreshLock(org.apache.openjpa.kernel.OpenJPAStateManager, int, int, java.lang.Object)">refreshLock</A></B>(<A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
int&nbsp;level,
int&nbsp;timeout,
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;sdata)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perform the same function as previous lock method and has the option
to perform a version check after the lock function has completed.</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/kernel/LockManager.html#release(org.apache.openjpa.kernel.OpenJPAStateManager)">release</A></B>(<A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Release the lock on the given object.</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/kernel/LockManager.html#setContext(org.apache.openjpa.kernel.StoreContext)">setContext</A></B>(<A HREF="../../../../org/apache/openjpa/kernel/StoreContext.html" title="interface in org.apache.openjpa.kernel">StoreContext</A>&nbsp;ctx)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the context this lock manager is associated with.</TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ 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="setContext(org.apache.openjpa.kernel.StoreContext)"><!-- --></A><H3>
setContext</H3>
<PRE>
void <B>setContext</B>(<A HREF="../../../../org/apache/openjpa/kernel/StoreContext.html" title="interface in org.apache.openjpa.kernel">StoreContext</A>&nbsp;ctx)</PRE>
<DL>
<DD>Set the context this lock manager is associated with.
This will be invoked in the lock manager before any other methods are
called.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getLockLevel(org.apache.openjpa.kernel.OpenJPAStateManager)"><!-- --></A><H3>
getLockLevel</H3>
<PRE>
int <B>getLockLevel</B>(<A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm)</PRE>
<DL>
<DD>Return the lock level of the specified instance, or
<A HREF="../../../../org/apache/openjpa/kernel/LockLevels.html#LOCK_NONE"><CODE>LockLevels.LOCK_NONE</CODE></A> if not locked.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="lock(org.apache.openjpa.kernel.OpenJPAStateManager, int, int, java.lang.Object)"><!-- --></A><H3>
lock</H3>
<PRE>
void <B>lock</B>(<A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
int&nbsp;level,
int&nbsp;timeout,
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;sdata)</PRE>
<DL>
<DD>Obtain a lock on the specified object. This method may be called when
a user explicitly locks an object, and is also called automatically
for every object accessed during a transaction. The implementation
must track already-locked objects, and must be optimized to return
quickly when the given object does not need additional locking.
The lock manager might use the state manager's lock object for
bookkeeping information.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>sm</CODE> - the object to lock<DD><CODE>level</CODE> - one of the lock constants defined in <A HREF="../../../../org/apache/openjpa/kernel/LockLevels.html" title="interface in org.apache.openjpa.kernel"><CODE>LockLevels</CODE></A>,
or a custom level<DD><CODE>timeout</CODE> - the timeout in milliseconds, or a negative number for
no timeout<DD><CODE>sdata</CODE> - the context information passed from the store manager
to the persistence context, if any; lock managers
specific to a certain back end may be able to take
advantage of this; others should ignore it
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../org/apache/openjpa/util/LockException.html" title="class in org.apache.openjpa.util">LockException</A></CODE> - if a lock cannot be
obtained in the given number of milliseconds<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html#setLock(java.lang.Object)"><CODE>OpenJPAStateManager.setLock(java.lang.Object)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="refreshLock(org.apache.openjpa.kernel.OpenJPAStateManager, int, int, java.lang.Object)"><!-- --></A><H3>
refreshLock</H3>
<PRE>
void <B>refreshLock</B>(<A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm,
int&nbsp;level,
int&nbsp;timeout,
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;sdata)</PRE>
<DL>
<DD>Perform the same function as previous lock method and has the option
to perform a version check after the lock function has completed.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="lockAll(java.util.Collection, int, int, java.lang.Object)"><!-- --></A><H3>
lockAll</H3>
<PRE>
void <B>lockAll</B>(<A HREF="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</A>&nbsp;sms,
int&nbsp;level,
int&nbsp;timeout,
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;sdata)</PRE>
<DL>
<DD>Obtain locks on the specified objects.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/openjpa/kernel/LockManager.html#lock(org.apache.openjpa.kernel.OpenJPAStateManager, int, int, java.lang.Object)"><CODE>lock(org.apache.openjpa.kernel.OpenJPAStateManager, int, int, java.lang.Object)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="release(org.apache.openjpa.kernel.OpenJPAStateManager)"><!-- --></A><H3>
release</H3>
<PRE>
void <B>release</B>(<A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html" title="interface in org.apache.openjpa.kernel">OpenJPAStateManager</A>&nbsp;sm)</PRE>
<DL>
<DD>Release the lock on the given object. This method will be called
automatically for each state manager with a lock object set on
transaction completion, just before the call to <A HREF="../../../../org/apache/openjpa/kernel/LockManager.html#endTransaction()"><CODE>endTransaction()</CODE></A>.
The lock manager should null the state manager's lock object. Note
that some state manager may be garbage collected during a transaction;
thus lock managers cannot rely on this method being called for every
state manager.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/openjpa/kernel/OpenJPAStateManager.html#setLock(java.lang.Object)"><CODE>OpenJPAStateManager.setLock(java.lang.Object)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="beginTransaction()"><!-- --></A><H3>
beginTransaction</H3>
<PRE>
void <B>beginTransaction</B>()</PRE>
<DL>
<DD>Notification that a transaction is beginning. Locks are only obtained
within transactions, so an implementation might use this method to
initialize bookkeeping datastructures, etc.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="endTransaction()"><!-- --></A><H3>
endTransaction</H3>
<PRE>
void <B>endTransaction</B>()</PRE>
<DL>
<DD>Notification that the current transaction has ended. Clear all
datastructures, release any left over locks, etc.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="close()"><!-- --></A><H3>
close</H3>
<PRE>
void <B>close</B>()</PRE>
<DL>
<DD>Free any resources.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/openjpa/lib/util/Closeable.html#close()">close</A></CODE> in interface <CODE><A HREF="../../../../org/apache/openjpa/lib/util/Closeable.html" title="interface in org.apache.openjpa.lib.util">Closeable</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/LockManager.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/kernel/LockLevels.html" title="interface in org.apache.openjpa.kernel"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/openjpa/kernel/LockScopes.html" title="interface in org.apache.openjpa.kernel"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/apache/openjpa/kernel/LockManager.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="LockManager.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;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&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&#x2013;2015 <a href="http://www.apache.org">Apache Software Foundation</a>. All rights reserved.
</BODY>
</HTML>