blob: d55214879d9fdee5c9e55ba9d5e28319e1b91c54 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="it">
<head>
<!-- Generated by javadoc (version 1.7.0_80) on Thu Jun 14 10:04:00 CEST 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>RemoteCommitProvider (OpenJPA Parent POM 2.4.3 API)</title>
<meta name="date" content="2018-06-14">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="RemoteCommitProvider (OpenJPA Parent POM 2.4.3 API)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/RemoteCommitProvider.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/openjpa/event/RemoteCommitListener.html" title="interface in org.apache.openjpa.event"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/openjpa/event/SingleJVMRemoteCommitProvider.html" title="class in org.apache.openjpa.event"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/openjpa/event/RemoteCommitProvider.html" target="_top">Frames</a></li>
<li><a href="RemoteCommitProvider.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.openjpa.event</div>
<h2 title="Interface RemoteCommitProvider" class="title">Interface RemoteCommitProvider</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../../../org/apache/openjpa/lib/util/Closeable.html" title="interface in org.apache.openjpa.lib.util">Closeable</a></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../org/apache/openjpa/event/AbstractRemoteCommitProvider.html" title="class in org.apache.openjpa.event">AbstractRemoteCommitProvider</a>, <a href="../../../../org/apache/openjpa/event/JMSRemoteCommitProvider.html" title="class in org.apache.openjpa.event">JMSRemoteCommitProvider</a>, <a href="../../../../org/apache/openjpa/event/SingleJVMRemoteCommitProvider.html" title="class in org.apache.openjpa.event">SingleJVMRemoteCommitProvider</a>, <a href="../../../../org/apache/openjpa/event/TCPRemoteCommitProvider.html" title="class in org.apache.openjpa.event">TCPRemoteCommitProvider</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="strong">RemoteCommitProvider</span>
extends <a href="../../../../org/apache/openjpa/lib/util/Closeable.html" title="interface in org.apache.openjpa.lib.util">Closeable</a></pre>
<div class="block">An entity that is responsible for communicating commit
notification to other <a href="../../../../org/apache/openjpa/event/RemoteCommitEventManager.html" title="class in org.apache.openjpa.event"><code>RemoteCommitEventManager</code></a>s. Each
event manager creates a remote commit provider, based on
the values of the <code>openjpa.RemoteCommitProvider</code>
configuration property.
An adapter that implements <a href="../../../../org/apache/openjpa/event/TransactionListener.html" title="interface in org.apache.openjpa.event"><code>TransactionListener</code></a> is
registered with each <a href="../../../../org/apache/openjpa/kernel/Broker.html" title="interface in org.apache.openjpa.kernel"><code>Broker</code></a>. This adapter
invokes <code>broadcast</code>, which is responsible for
notifying other remote commit provider objects of the commit changes.
Upon receiving a notification from a different remote commit provider,
a provider must notify all local remote commit listeners via the
<a href="../../../../org/apache/openjpa/event/RemoteCommitEventManager.html#fireEvent(java.lang.Object,%20java.lang.Object)"><code>RemoteCommitEventManager.fireEvent(java.lang.Object, java.lang.Object)</code></a> method.
A remote commit provider <b>must not</b> fire remote events for
commits that originated with a local broker.</div>
<dl><dt><span class="strong">Since:</span></dt>
<dd>0.2.5.0</dd>
<dt><span class="strong">Author:</span></dt>
<dd>Patrick Linskey</dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/openjpa/event/RemoteCommitProvider.html#broadcast(org.apache.openjpa.event.RemoteCommitEvent)">broadcast</a></strong>(<a href="../../../../org/apache/openjpa/event/RemoteCommitEvent.html" title="class in org.apache.openjpa.event">RemoteCommitEvent</a>&nbsp;event)</code>
<div class="block">Notifies other remote event managers in this JVM and on other machines
of changes to the cache.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/openjpa/event/RemoteCommitProvider.html#close()">close</a></strong>()</code>
<div class="block">Free the resources used by this provider.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/openjpa/event/RemoteCommitProvider.html#setRemoteCommitEventManager(org.apache.openjpa.event.RemoteCommitEventManager)">setRemoteCommitEventManager</a></strong>(<a href="../../../../org/apache/openjpa/event/RemoteCommitEventManager.html" title="class in org.apache.openjpa.event">RemoteCommitEventManager</a>&nbsp;mgr)</code>
<div class="block">Set the "owning" remote event manager to notify when remote events
are received from remote sources.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="setRemoteCommitEventManager(org.apache.openjpa.event.RemoteCommitEventManager)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRemoteCommitEventManager</h4>
<pre>void&nbsp;setRemoteCommitEventManager(<a href="../../../../org/apache/openjpa/event/RemoteCommitEventManager.html" title="class in org.apache.openjpa.event">RemoteCommitEventManager</a>&nbsp;mgr)</pre>
<div class="block">Set the "owning" remote event manager to notify when remote events
are received from remote sources.</div>
</li>
</ul>
<a name="broadcast(org.apache.openjpa.event.RemoteCommitEvent)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>broadcast</h4>
<pre>void&nbsp;broadcast(<a href="../../../../org/apache/openjpa/event/RemoteCommitEvent.html" title="class in org.apache.openjpa.event">RemoteCommitEvent</a>&nbsp;event)</pre>
<div class="block">Notifies other remote event managers in this JVM and on other machines
of changes to the cache. This method must not notify the
event manager associated with the broker that originated this commit.</div>
</li>
</ul>
<a name="close()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>close</h4>
<pre>void&nbsp;close()</pre>
<div class="block">Free the resources used by this provider.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../org/apache/openjpa/lib/util/Closeable.html#close()">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/openjpa/lib/util/Closeable.html" title="interface in org.apache.openjpa.lib.util">Closeable</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/RemoteCommitProvider.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/openjpa/event/RemoteCommitListener.html" title="interface in org.apache.openjpa.event"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/openjpa/event/SingleJVMRemoteCommitProvider.html" title="class in org.apache.openjpa.event"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/openjpa/event/RemoteCommitProvider.html" target="_top">Frames</a></li>
<li><a href="RemoteCommitProvider.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2006&#x2013;2018 <a href="http://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>