stasis/je-7.5.11/docs/java/com/sleepycat/je/rep/monitor/MonitorChangeListener.html

330 lines
14 KiB
HTML
Raw Normal View History

2019-06-25 20:12:40 +00:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_151) on Tue Oct 31 17:36:46 EDT 2017 -->
<title>MonitorChangeListener (Oracle - Berkeley DB Java Edition API)</title>
<meta name="date" content="2017-10-31">
<link rel="stylesheet" type="text/css" href="../../../../../style.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="MonitorChangeListener (Oracle - Berkeley DB Java Edition API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<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/MonitorChangeListener.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 class="aboutLanguage"><b>Berkeley DB Java Edition</b><br><font size=\"-1\"> version 7.5.11</font>
</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/sleepycat/je/rep/monitor/MonitorChangeEvent.html" title="class in com.sleepycat.je.rep.monitor"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/sleepycat/je/rep/monitor/MonitorConfig.html" title="class in com.sleepycat.je.rep.monitor"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/sleepycat/je/rep/monitor/MonitorChangeListener.html" target="_top">Frames</a></li>
<li><a href="MonitorChangeListener.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;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">com.sleepycat.je.rep.monitor</div>
<h2 title="Interface MonitorChangeListener" class="title">Interface MonitorChangeListener</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public interface <span class="typeNameLabel">MonitorChangeListener</span></pre>
<div class="block">Applications can register for Monitor event notification through
<a href="../../../../../com/sleepycat/je/rep/monitor/Monitor.html#startListener-com.sleepycat.je.rep.monitor.MonitorChangeListener-"><code>Monitor.startListener(com.sleepycat.je.rep.monitor.MonitorChangeListener)</code></a>. The interface defines an overloaded notify
event for each event supported by the Monitor.
<p>
Changes in the composition of the replication group, or in the dynamic state
of a member, are communicated to the listener as events that are represented
as subclasses of <a href="../../../../../com/sleepycat/je/rep/monitor/MonitorChangeEvent.html" title="class in com.sleepycat.je.rep.monitor"><code>MonitorChangeEvent</code></a>. Classes
implementing this interface supply implementations for a <code>notify</code>
associated with each type of event, so they can respond with some
application-specific course of action.
<p>
See <a href="../../../../../../ReplicationGuide/monitors.html"
target="_blank">Replication Guide, Writing Monitor Nodes</a></div>
</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="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/monitor/MonitorChangeListener.html#notify-com.sleepycat.je.rep.monitor.GroupChangeEvent-">notify</a></span>(<a href="../../../../../com/sleepycat/je/rep/monitor/GroupChangeEvent.html" title="class in com.sleepycat.je.rep.monitor">GroupChangeEvent</a>&nbsp;groupChangeEvent)</code>
<div class="block">The method is invoked whenever there is a change in the composition of
the replication group.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/monitor/MonitorChangeListener.html#notify-com.sleepycat.je.rep.monitor.JoinGroupEvent-">notify</a></span>(<a href="../../../../../com/sleepycat/je/rep/monitor/JoinGroupEvent.html" title="class in com.sleepycat.je.rep.monitor">JoinGroupEvent</a>&nbsp;joinGroupEvent)</code>
<div class="block">The method is invoked whenever a node joins the group, by successfully
opening its first
<a href="../../../../../com/sleepycat/je/rep/ReplicatedEnvironment.html" title="class in com.sleepycat.je.rep"><code>ReplicatedEnvironment</code></a> handle.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/monitor/MonitorChangeListener.html#notify-com.sleepycat.je.rep.monitor.LeaveGroupEvent-">notify</a></span>(<a href="../../../../../com/sleepycat/je/rep/monitor/LeaveGroupEvent.html" title="class in com.sleepycat.je.rep.monitor">LeaveGroupEvent</a>&nbsp;leaveGroupEvent)</code>
<div class="block">The method is invoked whenever a node leaves the group by closing its
last <a href="../../../../../com/sleepycat/je/rep/ReplicatedEnvironment.html" title="class in com.sleepycat.je.rep"><code>ReplicatedEnvironment</code></a> handle.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../com/sleepycat/je/rep/monitor/MonitorChangeListener.html#notify-com.sleepycat.je.rep.monitor.NewMasterEvent-">notify</a></span>(<a href="../../../../../com/sleepycat/je/rep/monitor/NewMasterEvent.html" title="class in com.sleepycat.je.rep.monitor">NewMasterEvent</a>&nbsp;newMasterEvent)</code>
<div class="block">The method is invoked whenever there is new master associated with the
replication group.</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="notify-com.sleepycat.je.rep.monitor.NewMasterEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notify</h4>
<pre>void&nbsp;notify(<a href="../../../../../com/sleepycat/je/rep/monitor/NewMasterEvent.html" title="class in com.sleepycat.je.rep.monitor">NewMasterEvent</a>&nbsp;newMasterEvent)</pre>
<div class="block">The method is invoked whenever there is new master associated with the
replication group.
If the method throws an exception, JE will log the exception as a trace
message, which will be propagated through the usual channels.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>newMasterEvent</code> - the event that resulted in the notify. It
identifies the new master.</dd>
</dl>
</li>
</ul>
<a name="notify-com.sleepycat.je.rep.monitor.GroupChangeEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notify</h4>
<pre>void&nbsp;notify(<a href="../../../../../com/sleepycat/je/rep/monitor/GroupChangeEvent.html" title="class in com.sleepycat.je.rep.monitor">GroupChangeEvent</a>&nbsp;groupChangeEvent)</pre>
<div class="block">The method is invoked whenever there is a change in the composition of
the replication group. That is, a new node has been added to the group
or an existing member has been removed from the group. Note that
SECONDARY nodes do not produce these events.
If the method throws an exception, JE will log the exception as a trace
message, which will be propagated through the usual channels.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>groupChangeEvent</code> - the event that resulted in the notify. It
describes the new group composition and identifies the node that
provoked the change.</dd>
</dl>
</li>
</ul>
<a name="notify-com.sleepycat.je.rep.monitor.JoinGroupEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notify</h4>
<pre>void&nbsp;notify(<a href="../../../../../com/sleepycat/je/rep/monitor/JoinGroupEvent.html" title="class in com.sleepycat.je.rep.monitor">JoinGroupEvent</a>&nbsp;joinGroupEvent)</pre>
<div class="block">The method is invoked whenever a node joins the group, by successfully
opening its first
<a href="../../../../../com/sleepycat/je/rep/ReplicatedEnvironment.html" title="class in com.sleepycat.je.rep"><code>ReplicatedEnvironment</code></a> handle.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>joinGroupEvent</code> - the event that resulted in the notify. It
identifies the node that joined the group.</dd>
</dl>
</li>
</ul>
<a name="notify-com.sleepycat.je.rep.monitor.LeaveGroupEvent-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>notify</h4>
<pre>void&nbsp;notify(<a href="../../../../../com/sleepycat/je/rep/monitor/LeaveGroupEvent.html" title="class in com.sleepycat.je.rep.monitor">LeaveGroupEvent</a>&nbsp;leaveGroupEvent)</pre>
<div class="block">The method is invoked whenever a node leaves the group by closing its
last <a href="../../../../../com/sleepycat/je/rep/ReplicatedEnvironment.html" title="class in com.sleepycat.je.rep"><code>ReplicatedEnvironment</code></a> handle.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>leaveGroupEvent</code> - the event that resulted in the notify. It
identifies the node that left the group.</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>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<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/MonitorChangeListener.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 class="aboutLanguage"><b>Berkeley DB Java Edition</b><br><font size=\"-1\"> version 7.5.11</font>
</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/sleepycat/je/rep/monitor/MonitorChangeEvent.html" title="class in com.sleepycat.je.rep.monitor"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/sleepycat/je/rep/monitor/MonitorConfig.html" title="class in com.sleepycat.je.rep.monitor"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/sleepycat/je/rep/monitor/MonitorChangeListener.html" target="_top">Frames</a></li>
<li><a href="MonitorChangeListener.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;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><font size=1>Copyright (c) 2002, 2017 Oracle and/or its affiliates. All rights reserved.</font> </small></p>
</body>
</html>