blob: 28b157d84aabd99f3cc8f62f17338e25bcca03bd [file] [log] [blame]
<!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 -->
<title>BootstrappingFunction (Apache Geode 1.15.0)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.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="BootstrappingFunction (Apache Geode 1.15.0)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete 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="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/geode/modules/util/Banner.html" title="class in org.apache.geode.modules.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/geode/modules/util/ClassLoaderObjectInputStream.html" title="class in org.apache.geode.modules.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/geode/modules/util/BootstrappingFunction.html" target="_top">Frames</a></li>
<li><a href="BootstrappingFunction.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><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&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.geode.modules.util</div>
<h2 title="Class BootstrappingFunction" class="title">Class BootstrappingFunction</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.geode.modules.util.BootstrappingFunction</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../../org/apache/geode/cache/execute/Function.html" title="interface in org.apache.geode.cache.execute">Function</a>, <a href="../../../../../org/apache/geode/DataSerializable.html" title="interface in org.apache.geode">DataSerializable</a>, org.apache.geode.distributed.internal.MembershipListener, <a href="../../../../../org/apache/geode/lang/Identifiable.html" title="interface in org.apache.geode.lang">Identifiable</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">BootstrappingFunction</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="../../../../../org/apache/geode/cache/execute/Function.html" title="interface in org.apache.geode.cache.execute">Function</a>, org.apache.geode.distributed.internal.MembershipListener, <a href="../../../../../org/apache/geode/DataSerializable.html" title="interface in org.apache.geode">DataSerializable</a></pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../serialized-form.html#org.apache.geode.modules.util.BootstrappingFunction">Serialized Form</a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.geode.DataSerializable">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.geode.<a href="../../../../../org/apache/geode/DataSerializable.html" title="interface in org.apache.geode">DataSerializable</a></h3>
<code><a href="../../../../../org/apache/geode/DataSerializable.Replaceable.html" title="interface in org.apache.geode">DataSerializable.Replaceable</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#ID">ID</a></span></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#BootstrappingFunction--">BootstrappingFunction</a></span>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== 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="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete 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>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#equals-java.lang.Object-">equals</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;obj)</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#execute-org.apache.geode.cache.execute.FunctionContext-">execute</a></span>(<a href="../../../../../org/apache/geode/cache/execute/FunctionContext.html" title="interface in org.apache.geode.cache.execute">FunctionContext</a>&nbsp;context)</code>
<div class="block">The method which contains the logic to be executed.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#fromData-java.io.DataInput-">fromData</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInput.html?is-external=true" title="class or interface in java.io">DataInput</a>&nbsp;in)</code>
<div class="block">Reads the state of this object as primitive data from the given <code>DataInput</code>.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#getId--">getId</a></span>()</code>
<div class="block">Return a unique function identifier, used to register the function with <a href="../../../../../org/apache/geode/cache/execute/FunctionService.html" title="class in org.apache.geode.cache.execute"><code>FunctionService</code></a></div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/geode/security/ResourcePermission.html" title="class in org.apache.geode.security">ResourcePermission</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#getRequiredPermissions-java.lang.String-">getRequiredPermissions</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regionName)</code>
<div class="block">Returns the list of ResourcePermission this function requires.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#hasResult--">hasResult</a></span>()</code>
<div class="block">Specifies whether the function sends results while executing.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#isHA--">isHA</a></span>()</code>
<div class="block">Specifies whether the function is eligible for re-execution (in case of failure).</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#isLocator-org.apache.geode.cache.Cache-">isLocator</a></span>(<a href="../../../../../org/apache/geode/cache/Cache.html" title="interface in org.apache.geode.cache">Cache</a>&nbsp;cache)</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#memberDeparted-org.apache.geode.distributed.internal.DistributionManager-org.apache.geode.distributed.internal.membership.InternalDistributedMember-boolean-">memberDeparted</a></span>(org.apache.geode.distributed.internal.DistributionManager&nbsp;distributionManager,
org.apache.geode.distributed.internal.membership.InternalDistributedMember&nbsp;id,
boolean&nbsp;crashed)</code>&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#memberJoined-org.apache.geode.distributed.internal.DistributionManager-org.apache.geode.distributed.internal.membership.InternalDistributedMember-">memberJoined</a></span>(org.apache.geode.distributed.internal.DistributionManager&nbsp;distributionManager,
org.apache.geode.distributed.internal.membership.InternalDistributedMember&nbsp;id)</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#memberSuspect-org.apache.geode.distributed.internal.DistributionManager-org.apache.geode.distributed.internal.membership.InternalDistributedMember-org.apache.geode.distributed.internal.membership.InternalDistributedMember-java.lang.String-">memberSuspect</a></span>(org.apache.geode.distributed.internal.DistributionManager&nbsp;distributionManager,
org.apache.geode.distributed.internal.membership.InternalDistributedMember&nbsp;id,
org.apache.geode.distributed.internal.membership.InternalDistributedMember&nbsp;whoSuspected,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reason)</code>&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#optimizeForWrite--">optimizeForWrite</a></span>()</code>
<div class="block">
Return true to indicate to GemFire the method requires optimization for writing the targeted
<a href="../../../../../org/apache/geode/cache/execute/FunctionService.html#onRegion-org.apache.geode.cache.Region-"><code>FunctionService.onRegion(org.apache.geode.cache.Region)</code></a> and any associated <a href="../../../../../org/apache/geode/cache/execute/Execution.html#withFilter-java.util.Set-">routing objects</a>.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#quorumLost-org.apache.geode.distributed.internal.DistributionManager-java.util.Set-java.util.List-">quorumLost</a></span>(org.apache.geode.distributed.internal.DistributionManager&nbsp;distributionManager,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.apache.geode.distributed.internal.membership.InternalDistributedMember&gt;&nbsp;internalDistributedMembers,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.geode.distributed.internal.membership.InternalDistributedMember&gt;&nbsp;internalDistributedMembers2)</code>&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#registerFunctions--">registerFunctions</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#toData-java.io.DataOutput-">toData</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutput.html?is-external=true" title="class or interface in java.io">DataOutput</a>&nbsp;out)</code>
<div class="block">Writes the state of this object as primitive data to the given <code>DataOutput</code>.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/apache/geode/cache/Cache.html" title="interface in org.apache.geode.cache">Cache</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/modules/util/BootstrappingFunction.html#verifyCacheExists--">verifyCacheExists</a></span>()</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.geode.cache.execute.Function">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.geode.cache.execute.<a href="../../../../../org/apache/geode/cache/execute/Function.html" title="interface in org.apache.geode.cache.execute">Function</a></h3>
<code><a href="../../../../../org/apache/geode/cache/execute/Function.html#getRequiredPermissions-java.lang.String-java.lang.Object-">getRequiredPermissions</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.geode.lang.Identifiable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.geode.lang.<a href="../../../../../org/apache/geode/lang/Identifiable.html" title="interface in org.apache.geode.lang">Identifiable</a></h3>
<code><a href="../../../../../org/apache/geode/lang/Identifiable.html#exists-java.util.List-java.lang.String-">exists</a>, <a href="../../../../../org/apache/geode/lang/Identifiable.html#find-java.util.List-java.lang.String-">find</a>, <a href="../../../../../org/apache/geode/lang/Identifiable.html#remove-java.util.List-java.lang.String-">remove</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="ID">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ID</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> ID</pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.geode.modules.util.BootstrappingFunction.ID">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="BootstrappingFunction--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>BootstrappingFunction</h4>
<pre>public&nbsp;BootstrappingFunction()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="execute-org.apache.geode.cache.execute.FunctionContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre>public&nbsp;void&nbsp;execute(<a href="../../../../../org/apache/geode/cache/execute/FunctionContext.html" title="interface in org.apache.geode.cache.execute">FunctionContext</a>&nbsp;context)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html#execute-org.apache.geode.cache.execute.FunctionContext-">Function</a></code></span></div>
<div class="block">The method which contains the logic to be executed. This method should be thread safe and may
be invoked more than once on a given member for a single <a href="../../../../../org/apache/geode/cache/execute/Execution.html" title="interface in org.apache.geode.cache.execute"><code>Execution</code></a>. The context
provided to this function is the one which was built using <a href="../../../../../org/apache/geode/cache/execute/Execution.html" title="interface in org.apache.geode.cache.execute">Execution</a>. The contexts
can be data dependent or data-independent so user should check to see if the context provided
in parameter is instance of <a href="../../../../../org/apache/geode/cache/execute/RegionFunctionContext.html" title="interface in org.apache.geode.cache.execute"><code>RegionFunctionContext</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/cache/execute/Function.html#execute-org.apache.geode.cache.execute.FunctionContext-">execute</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html" title="interface in org.apache.geode.cache.execute">Function</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>context</code> - as created by <a href="../../../../../org/apache/geode/cache/execute/Execution.html" title="interface in org.apache.geode.cache.execute"><code>Execution</code></a></dd>
</dl>
</li>
</ul>
<a name="isLocator-org.apache.geode.cache.Cache-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLocator</h4>
<pre>protected&nbsp;boolean&nbsp;isLocator(<a href="../../../../../org/apache/geode/cache/Cache.html" title="interface in org.apache.geode.cache">Cache</a>&nbsp;cache)</pre>
</li>
</ul>
<a name="verifyCacheExists--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>verifyCacheExists</h4>
<pre>protected&nbsp;<a href="../../../../../org/apache/geode/cache/Cache.html" title="interface in org.apache.geode.cache">Cache</a>&nbsp;verifyCacheExists()</pre>
</li>
</ul>
<a name="getRequiredPermissions-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRequiredPermissions</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/geode/security/ResourcePermission.html" title="class in org.apache.geode.security">ResourcePermission</a>&gt;&nbsp;getRequiredPermissions(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;regionName)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html#getRequiredPermissions-java.lang.String-">Function</a></code></span></div>
<div class="block">Returns the list of ResourcePermission this function requires.
<p>
By default, functions require DATA:WRITE permission. If your function requires other
permissions, you will need to override this method.
<p>
Please be as specific as possible when you set the required permissions for your function e.g.
if your function reads from a region, it would be good to include the region name in your
permission. It's better to return "DATA:READ:regionName" as the required permission other than
"DATA:READ", because the latter means only users with read permission on ALL regions can
execute your function.
<p>
All the permissions returned from this method will be ANDed together.
<p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/cache/execute/Function.html#getRequiredPermissions-java.lang.String-">getRequiredPermissions</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html" title="interface in org.apache.geode.cache.execute">Function</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>regionName</code> - the region this function will be executed on. The regionName is optional and
will only be present when the function is executed by an onRegion() executor. In other
cases,
it will be null. This method returns permissions appropriate to the context, independent
of the
presence of the regionName parameter.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a collection of <a href="../../../../../org/apache/geode/security/ResourcePermission.html" title="class in org.apache.geode.security"><code>ResourcePermission</code></a>s indicating the permissions required to
execute the function.</dd>
</dl>
</li>
</ul>
<a name="registerFunctions--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerFunctions</h4>
<pre>protected&nbsp;void&nbsp;registerFunctions()</pre>
</li>
</ul>
<a name="getId--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getId</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getId()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html#getId--">Function</a></code></span></div>
<div class="block">Return a unique function identifier, used to register the function with <a href="../../../../../org/apache/geode/cache/execute/FunctionService.html" title="class in org.apache.geode.cache.execute"><code>FunctionService</code></a></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/cache/execute/Function.html#getId--">getId</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html" title="interface in org.apache.geode.cache.execute">Function</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/lang/Identifiable.html#getId--">getId</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/lang/Identifiable.html" title="interface in org.apache.geode.lang">Identifiable</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>string identifying this function</dd>
</dl>
</li>
</ul>
<a name="hasResult--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasResult</h4>
<pre>public&nbsp;boolean&nbsp;hasResult()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html#hasResult--">Function</a></code></span></div>
<div class="block">Specifies whether the function sends results while executing. The method returns false if no
result is expected.<br>
<p>
If this method returns false, <a href="../../../../../org/apache/geode/cache/execute/ResultCollector.html#getResult--"><code>ResultCollector.getResult()</code></a> throws
<a href="../../../../../org/apache/geode/cache/execute/FunctionException.html" title="class in org.apache.geode.cache.execute"><code>FunctionException</code></a>.
<p>
If this method returns true, <a href="../../../../../org/apache/geode/cache/execute/ResultCollector.html#getResult--"><code>ResultCollector.getResult()</code></a> blocks and
waits for the result of function execution
<p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/cache/execute/Function.html#hasResult--">hasResult</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html" title="interface in org.apache.geode.cache.execute">Function</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether this function returns a Result back to the caller.</dd>
</dl>
</li>
</ul>
<a name="isHA--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isHA</h4>
<pre>public&nbsp;boolean&nbsp;isHA()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html#isHA--">Function</a></code></span></div>
<div class="block">Specifies whether the function is eligible for re-execution (in case of failure).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/cache/execute/Function.html#isHA--">isHA</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html" title="interface in org.apache.geode.cache.execute">Function</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the function is eligible for re-execution.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/apache/geode/cache/execute/FunctionContext.html#isPossibleDuplicate--"><code>FunctionContext.isPossibleDuplicate()</code></a></dd>
</dl>
</li>
</ul>
<a name="optimizeForWrite--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>optimizeForWrite</h4>
<pre>public&nbsp;boolean&nbsp;optimizeForWrite()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html#optimizeForWrite--">Function</a></code></span></div>
<div class="block"><p>
Return true to indicate to GemFire the method requires optimization for writing the targeted
<a href="../../../../../org/apache/geode/cache/execute/FunctionService.html#onRegion-org.apache.geode.cache.Region-"><code>FunctionService.onRegion(org.apache.geode.cache.Region)</code></a> and any associated <a href="../../../../../org/apache/geode/cache/execute/Execution.html#withFilter-java.util.Set-">routing objects</a>.
<p>
Returning false will optimize for read behavior on the targeted <a href="../../../../../org/apache/geode/cache/execute/FunctionService.html#onRegion-org.apache.geode.cache.Region-"><code>FunctionService.onRegion(org.apache.geode.cache.Region)</code></a> and any associated <a href="../../../../../org/apache/geode/cache/execute/Execution.html#withFilter-java.util.Set-">routing objects</a>.
<p>
This method is only consulted when Region passed to
FunctionService#onRegion(org.apache.geode.cache.Region)
is a partitioned region
<p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/cache/execute/Function.html#optimizeForWrite--">optimizeForWrite</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/cache/execute/Function.html" title="interface in org.apache.geode.cache.execute">Function</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>false if the function is read only, otherwise returns true</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/apache/geode/cache/execute/FunctionService.html" title="class in org.apache.geode.cache.execute"><code>FunctionService</code></a></dd>
</dl>
</li>
</ul>
<a name="hashCode--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hashCode</h4>
<pre>public&nbsp;int&nbsp;hashCode()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="equals-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre>public&nbsp;boolean&nbsp;equals(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;obj)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="memberDeparted-org.apache.geode.distributed.internal.DistributionManager-org.apache.geode.distributed.internal.membership.InternalDistributedMember-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>memberDeparted</h4>
<pre>public&nbsp;void&nbsp;memberDeparted(org.apache.geode.distributed.internal.DistributionManager&nbsp;distributionManager,
org.apache.geode.distributed.internal.membership.InternalDistributedMember&nbsp;id,
boolean&nbsp;crashed)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>memberDeparted</code>&nbsp;in interface&nbsp;<code>org.apache.geode.distributed.internal.MembershipListener</code></dd>
</dl>
</li>
</ul>
<a name="memberJoined-org.apache.geode.distributed.internal.DistributionManager-org.apache.geode.distributed.internal.membership.InternalDistributedMember-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>memberJoined</h4>
<pre>public&nbsp;void&nbsp;memberJoined(org.apache.geode.distributed.internal.DistributionManager&nbsp;distributionManager,
org.apache.geode.distributed.internal.membership.InternalDistributedMember&nbsp;id)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>memberJoined</code>&nbsp;in interface&nbsp;<code>org.apache.geode.distributed.internal.MembershipListener</code></dd>
</dl>
</li>
</ul>
<a name="memberSuspect-org.apache.geode.distributed.internal.DistributionManager-org.apache.geode.distributed.internal.membership.InternalDistributedMember-org.apache.geode.distributed.internal.membership.InternalDistributedMember-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>memberSuspect</h4>
<pre>public&nbsp;void&nbsp;memberSuspect(org.apache.geode.distributed.internal.DistributionManager&nbsp;distributionManager,
org.apache.geode.distributed.internal.membership.InternalDistributedMember&nbsp;id,
org.apache.geode.distributed.internal.membership.InternalDistributedMember&nbsp;whoSuspected,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;reason)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>memberSuspect</code>&nbsp;in interface&nbsp;<code>org.apache.geode.distributed.internal.MembershipListener</code></dd>
</dl>
</li>
</ul>
<a name="quorumLost-org.apache.geode.distributed.internal.DistributionManager-java.util.Set-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>quorumLost</h4>
<pre>public&nbsp;void&nbsp;quorumLost(org.apache.geode.distributed.internal.DistributionManager&nbsp;distributionManager,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;org.apache.geode.distributed.internal.membership.InternalDistributedMember&gt;&nbsp;internalDistributedMembers,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.geode.distributed.internal.membership.InternalDistributedMember&gt;&nbsp;internalDistributedMembers2)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>quorumLost</code>&nbsp;in interface&nbsp;<code>org.apache.geode.distributed.internal.MembershipListener</code></dd>
</dl>
</li>
</ul>
<a name="toData-java.io.DataOutput-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toData</h4>
<pre>public&nbsp;void&nbsp;toData(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutput.html?is-external=true" title="class or interface in java.io">DataOutput</a>&nbsp;out)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/DataSerializable.html#toData-java.io.DataOutput-">DataSerializable</a></code></span></div>
<div class="block">Writes the state of this object as primitive data to the given <code>DataOutput</code>.
<p>
Since 5.7 it is possible for any method call to the specified <code>DataOutput</code> to throw
<a href="../../../../../org/apache/geode/GemFireRethrowable.html" title="class in org.apache.geode"><code>GemFireRethrowable</code></a>. It should <em>not</em> be caught by user code. If it is it
<em>must</em> be rethrown.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/DataSerializable.html#toData-java.io.DataOutput-">toData</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/DataSerializable.html" title="interface in org.apache.geode">DataSerializable</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>out</code> - the <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataOutput.html?is-external=true" title="class or interface in java.io"><code>DataOutput</code></a> to write to</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - A problem occurs while writing to <code>out</code></dd>
</dl>
</li>
</ul>
<a name="fromData-java.io.DataInput-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>fromData</h4>
<pre>public&nbsp;void&nbsp;fromData(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInput.html?is-external=true" title="class or interface in java.io">DataInput</a>&nbsp;in)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassNotFoundException.html?is-external=true" title="class or interface in java.lang">ClassNotFoundException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/geode/DataSerializable.html#fromData-java.io.DataInput-">DataSerializable</a></code></span></div>
<div class="block">Reads the state of this object as primitive data from the given <code>DataInput</code>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/geode/DataSerializable.html#fromData-java.io.DataInput-">fromData</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/geode/DataSerializable.html" title="interface in org.apache.geode">DataSerializable</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>in</code> - the <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInput.html?is-external=true" title="class or interface in java.io"><code>DataInput</code></a> to read from</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - A problem occurs while reading from <code>in</code></dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassNotFoundException.html?is-external=true" title="class or interface in java.lang">ClassNotFoundException</a></code> - A class could not be loaded while reading from <code>in</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>
<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="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/geode/modules/util/Banner.html" title="class in org.apache.geode.modules.util"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/geode/modules/util/ClassLoaderObjectInputStream.html" title="class in org.apache.geode.modules.util"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/geode/modules/util/BootstrappingFunction.html" target="_top">Frames</a></li>
<li><a href="BootstrappingFunction.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><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>