<!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_261) on Sat Sep 11 21:20:02 MSK 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>MaintenanceRegistry (Ignite 2.11.0)</title>
<meta name="date" content="2021-09-11">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<link rel='shortcut icon' href='https://ignite.apache.org/favicon.ico'/>
</head>

<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="MaintenanceRegistry (Ignite 2.11.0)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":18,"i7":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default 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/MaintenanceRegistry.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/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/maintenance/MaintenanceRegistry.html" target="_top">Frames</a></li>
<li><a href="MaintenanceRegistry.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">org.apache.ignite.maintenance</div>
<h2 title="Interface MaintenanceRegistry" class="title">Interface MaintenanceRegistry</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public interface <span class="typeNameLabel">MaintenanceRegistry</span></pre>
<div class="block"><a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceRegistry</code></a> is a service local to each Ignite node
 that allows to request performing maintenance actions on that particular node.

 <p>
     When a node gets into a situation when some specific actions are required
     it enters the special mode called maintenance mode.
     In maintenance mode it doesn't join to the rest of the cluster but still allows to connect to it
     with control.{sh|bat} script or via JXM interface and perform needed actions.
 </p>

 <p>
     Implementing new task for maintenance mode requires several pieces of code.

     <ul>
         <li>
             First, component requiring Maintenance Mode should be able to register new <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a>
             with <a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#registerMaintenanceTask-org.apache.ignite.maintenance.MaintenanceTask-"><code>registerMaintenanceTask(MaintenanceTask)</code></a> method.

             Registration could happen automatically (e.g. if component detects some emergency situation
             that requires user intervention)
             or by user request (e.g. for a planned maintenance that requires
             detaching node from the rest of the cluster).
         </li>
         <li>
             Component responsible for handling this <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a>
             on startup checks if the task is registered (thus it should go to Maintenance Mode).
             If task is found component provides to <a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceRegistry</code></a> its own implementation
             of <a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceWorkflowCallback</code></a> interface
             via method <a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#registerWorkflowCallback-java.lang.String-org.apache.ignite.maintenance.MaintenanceWorkflowCallback-"><code>registerWorkflowCallback(String, MaintenanceWorkflowCallback)</code></a>.
         </li>
         <li>
             <a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceWorkflowCallback</code></a> should provide <a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceRegistry</code></a> with
             <a href="../../../../org/apache/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceAction</code></a>s that are able to resolve maintenance task,
             get information about it and so on.
             Logic of these actions is completely up to the component providing it
             and depends only on particular maintenance task.
         </li>
         <li>
             When maintenance task is fixed, it should be removed from <a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceRegistry</code></a>
             with call <a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#unregisterMaintenanceTask-java.lang.String-"><code>unregisterMaintenanceTask(String)</code></a>.
         </li>
     </ul>
 </p></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><span id="t5" class="tableTab"><span><a href="javascript:show(16);">Default 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><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><span class='angle_bracket'>&lt;</span><a href="../../../../org/apache/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance">MaintenanceAction</a><span class='angle_bracket'>&lt;</span>?<span class='angle_bracket'>&gt;</span><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#actionsForMaintenanceTask-java.lang.String-">actionsForMaintenanceTask</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;maintenanceTaskName)</code>
<div class="block">All <a href="../../../../org/apache/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceAction</code></a>s provided by a component for <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> with a given name.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>@Nullable <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance">MaintenanceTask</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#activeMaintenanceTask-java.lang.String-">activeMaintenanceTask</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;maintenanceTaskName)</code>
<div class="block">Returns active <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> by its name.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#isMaintenanceMode--">isMaintenanceMode</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#prepareAndExecuteMaintenance--">prepareAndExecuteMaintenance</a></span>()</code>
<div class="block">Examine all components if they need to execute maintenance actions.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>@Nullable <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance">MaintenanceTask</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#registerMaintenanceTask-org.apache.ignite.maintenance.MaintenanceTask-">registerMaintenanceTask</a></span>(<a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance">MaintenanceTask</a>&nbsp;task)</code>
<div class="block">Method to register <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> locally on the node where method is called.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#registerWorkflowCallback-java.lang.String-org.apache.ignite.maintenance.MaintenanceWorkflowCallback-">registerWorkflowCallback</a></span>(@NotNull <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;maintenanceTaskName,
                        @NotNull <a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance">MaintenanceWorkflowCallback</a>&nbsp;cb)</code>
<div class="block">Registers <a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceWorkflowCallback</code></a> for a <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> with a given name.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>default void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#registerWorkflowCallbackIfTaskExists-java.lang.String-org.apache.ignite.internal.util.lang.IgniteThrowableFunction-">registerWorkflowCallbackIfTaskExists</a></span>(@NotNull <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;maintenanceTaskName,
                                    @NotNull org.apache.ignite.internal.util.lang.IgniteThrowableFunction<span class='angle_bracket'>&lt;</span><a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance">MaintenanceTask</a>,<a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance">MaintenanceWorkflowCallback</a><span class='angle_bracket'>&gt;</span>&nbsp;workflowCalProvider)</code>
<div class="block">Call the <a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#registerWorkflowCallback-java.lang.String-org.apache.ignite.maintenance.MaintenanceWorkflowCallback-"><code>registerWorkflowCallback(String, MaintenanceWorkflowCallback)</code></a> if the active maintenance task
 with given name exists.</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/ignite/maintenance/MaintenanceRegistry.html#unregisterMaintenanceTask-java.lang.String-">unregisterMaintenanceTask</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;maintenanceTaskName)</code>
<div class="block">Deletes <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> of given ID from maintenance registry.</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="isMaintenanceMode--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isMaintenanceMode</h4>
<pre>boolean&nbsp;isMaintenanceMode()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>True</code> if any maintenance task was found.</dd>
</dl>
</li>
</ul>
<a name="registerMaintenanceTask-org.apache.ignite.maintenance.MaintenanceTask-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerMaintenanceTask</h4>
<pre>@Nullable
@Nullable <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance">MaintenanceTask</a>&nbsp;registerMaintenanceTask(<a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance">MaintenanceTask</a>&nbsp;task)
                                                     throws <a href="../../../../org/apache/ignite/IgniteCheckedException.html" title="class in org.apache.ignite">IgniteCheckedException</a></pre>
<div class="block">Method to register <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> locally on the node where method is called.
 <p>
     For now it is not allowed to register new Maintenance Tasks in Maintenance Mode
     so this method should be called only when node operates normally.
     This may change in the future so it will become possible to create other maintenance tasks
     on node that is already entered Maintenance Mode.
 </p>
 <p>
     When task is registered node continues to operate normally
     and will enter Maintenance Mode only after restart.
 </p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>task</code> - <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> object with maintenance information that needs
                                     to be stored to maintenance registry.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Previously registered <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> with the same ID
 or null if no tasks were registered for this ID.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/ignite/IgniteCheckedException.html" title="class in org.apache.ignite">IgniteCheckedException</a></code> - If handling or storing maintenance task failed.</dd>
</dl>
</li>
</ul>
<a name="unregisterMaintenanceTask-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unregisterMaintenanceTask</h4>
<pre>boolean&nbsp;unregisterMaintenanceTask(<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;maintenanceTaskName)</pre>
<div class="block">Deletes <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> of given ID from maintenance registry.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>maintenanceTaskName</code> - name of <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> to be deleted.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if existing task has been deleted.</dd>
</dl>
</li>
</ul>
<a name="activeMaintenanceTask-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>activeMaintenanceTask</h4>
<pre>@Nullable
@Nullable <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance">MaintenanceTask</a>&nbsp;activeMaintenanceTask(<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;maintenanceTaskName)</pre>
<div class="block">Returns active <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> by its name.
 There are active tasks only when node entered Maintenance Mode.

 <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> becomes active when node enters Maintenance Mode and doesn't resolve the task
 during maintenance prepare phase.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>maintenanceTaskName</code> - Maintenance Task name.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> object for given name or null if no maintenance task was found.</dd>
</dl>
</li>
</ul>
<a name="registerWorkflowCallback-java.lang.String-org.apache.ignite.maintenance.MaintenanceWorkflowCallback-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerWorkflowCallback</h4>
<pre>void&nbsp;registerWorkflowCallback(@NotNull
                              @NotNull <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;maintenanceTaskName,
                              @NotNull
                              @NotNull <a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance">MaintenanceWorkflowCallback</a>&nbsp;cb)</pre>
<div class="block">Registers <a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceWorkflowCallback</code></a> for a <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> with a given name.

 Component registered <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> automatically or by user request
 is responsible for providing <a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceRegistry</code></a> with an implementation of
 <a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceWorkflowCallback</code></a> where registry obtains <a href="../../../../org/apache/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceAction</code></a>s
 to be executed for this task and does a preliminary check before starting maintenance.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>maintenanceTaskName</code> - name of <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> this callback is registered for.</dd>
<dd><code>cb</code> - <a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceWorkflowCallback</code></a> interface used by MaintenanceRegistry to execute
                                              maintenance steps by workflow.</dd>
</dl>
</li>
</ul>
<a name="actionsForMaintenanceTask-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>actionsForMaintenanceTask</h4>
<pre><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><span class='angle_bracket'>&lt;</span><a href="../../../../org/apache/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance">MaintenanceAction</a><span class='angle_bracket'>&lt;</span>?<span class='angle_bracket'>&gt;</span><span class='angle_bracket'>&gt;</span>&nbsp;actionsForMaintenanceTask(<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;maintenanceTaskName)</pre>
<div class="block">All <a href="../../../../org/apache/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceAction</code></a>s provided by a component for <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> with a given name.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>maintenanceTaskName</code> - name of Maintenance Task.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util"><code>List</code></a> of all available <a href="../../../../org/apache/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceAction</code></a>s for given Maintenance Task.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - if no Maintenance Tasks are registered for provided name.</dd>
</dl>
</li>
</ul>
<a name="prepareAndExecuteMaintenance--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepareAndExecuteMaintenance</h4>
<pre>void&nbsp;prepareAndExecuteMaintenance()</pre>
<div class="block">Examine all components if they need to execute maintenance actions.

 As user may resolve some maintenance situations by hand when the node was turned off,
 component may find out that no maintenance is needed anymore.

 <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>Maintenance tasks</code></a> for these components are removed
 and their <a href="../../../../org/apache/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance"><code>maintenance actions</code></a> are not executed.</div>
</li>
</ul>
<a name="registerWorkflowCallbackIfTaskExists-java.lang.String-org.apache.ignite.internal.util.lang.IgniteThrowableFunction-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>registerWorkflowCallbackIfTaskExists</h4>
<pre>default&nbsp;void&nbsp;registerWorkflowCallbackIfTaskExists(@NotNull
                                                  @NotNull <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;maintenanceTaskName,
                                                  @NotNull
                                                  @NotNull org.apache.ignite.internal.util.lang.IgniteThrowableFunction<span class='angle_bracket'>&lt;</span><a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance">MaintenanceTask</a>,<a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance">MaintenanceWorkflowCallback</a><span class='angle_bracket'>&gt;</span>&nbsp;workflowCalProvider)
                                           throws <a href="../../../../org/apache/ignite/IgniteCheckedException.html" title="class in org.apache.ignite">IgniteCheckedException</a></pre>
<div class="block">Call the <a href="../../../../org/apache/ignite/maintenance/MaintenanceRegistry.html#registerWorkflowCallback-java.lang.String-org.apache.ignite.maintenance.MaintenanceWorkflowCallback-"><code>registerWorkflowCallback(String, MaintenanceWorkflowCallback)</code></a> if the active maintenance task
 with given name exists.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>maintenanceTaskName</code> - name of <a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><code>MaintenanceTask</code></a> this callback is registered for.</dd>
<dd><code>workflowCalProvider</code> - provider of <a href="../../../../org/apache/ignite/maintenance/MaintenanceWorkflowCallback.html" title="interface in org.apache.ignite.maintenance"><code>MaintenanceWorkflowCallback</code></a> which construct the callback by given
 task.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/ignite/IgniteCheckedException.html" title="class in org.apache.ignite">IgniteCheckedException</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>
<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/MaintenanceRegistry.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/ignite/maintenance/MaintenanceAction.html" title="interface in org.apache.ignite.maintenance"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/ignite/maintenance/MaintenanceTask.html" title="class in org.apache.ignite.maintenance"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/maintenance/MaintenanceRegistry.html" target="_top">Frames</a></li>
<li><a href="MaintenanceRegistry.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><table width="100%" border="0" cellspacing=0 cellpadding=0 style="padding: 5px">                                     <tr>                                         <td>                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <a target=_blank href="https://ignite.apache.org"><nobr>2021 Copyright &#169; Apache Software Foundation</nobr></a>                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                         <td width="100%" align="right" valign="center">                                             <a href="https://twitter.com/ApacheIgnite" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @ApacheIgnite</a>                                         </td>                                     </tr>                                     <tr>                                         <td colspan="2" valign="top" align="left">                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Ignite Database and Caching Platform</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             ver. <strong>2.11.0</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             September 11 2021                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
</body>
</html>
