blob: 2e38956444439a8abd41df652a116ece0508e647 [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 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>BaseResourceAwareStrategy (Storm 2.1.1 API)</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="BaseResourceAwareStrategy (Storm 2.1.1 API)";
}
}
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":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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="class-use/BaseResourceAwareStrategy.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>Prev&nbsp;Class</li>
<li><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.AllResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html" target="_top">Frames</a></li>
<li><a href="BaseResourceAwareStrategy.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><a href="#nested.class.summary">Nested</a>&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.storm.scheduler.resource.strategies.scheduling</div>
<h2 title="Class BaseResourceAwareStrategy" class="title">Class BaseResourceAwareStrategy</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.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/IStrategy.html" title="interface in org.apache.storm.scheduler.resource.strategies.scheduling">IStrategy</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/ConstraintSolverStrategy.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">ConstraintSolverStrategy</a>, <a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/DefaultResourceAwareStrategy.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">DefaultResourceAwareStrategy</a>, <a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/GenericResourceAwareStrategy.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">GenericResourceAwareStrategy</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">BaseResourceAwareStrategy</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/storm/scheduler/resource/strategies/scheduling/IStrategy.html" title="interface in org.apache.storm.scheduler.resource.strategies.scheduling">IStrategy</a></pre>
</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>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.AllResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.AllResources</a></span></code>
<div class="block">a class to contain individual object resources as well as cumulative stats.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static interface&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.ExistingScheduleFunc.html" title="interface in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.ExistingScheduleFunc</a></span></code>
<div class="block">interface for calculating the number of existing executors scheduled on a object (rack or node).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.ObjectResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.ObjectResources</a></span></code>
<div class="block">class to keep track of resources on a rack or node.</div>
</td>
</tr>
</table>
</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>protected <a href="../../../../../../../org/apache/storm/scheduler/Cluster.html" title="class in org.apache.storm.scheduler">Cluster</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#cluster">cluster</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Nodes.html" title="class in org.apache.storm.scheduler.resource">RAS_Nodes</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#nodes">nodes</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/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#BaseResourceAwareStrategy--">BaseResourceAwareStrategy</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="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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>protected <a href="../../../../../../../org/apache/storm/scheduler/WorkerSlot.html" title="class in org.apache.storm.scheduler">WorkerSlot</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#findWorkerForExec-org.apache.storm.scheduler.ExecutorDetails-org.apache.storm.scheduler.TopologyDetails-java.lang.Iterable-">findWorkerForExec</a></span>(<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<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>&gt;&nbsp;sortedNodes)</code>
<div class="block">Find a worker to schedule executor exec on.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected <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;<a href="../../../../../../../org/apache/storm/scheduler/Component.html" title="class in org.apache.storm.scheduler">Component</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#getSpouts-org.apache.storm.scheduler.TopologyDetails-">getSpouts</a></span>(<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td)</code>
<div class="block">Get a list of all the spouts in the topology.</div>
</td>
</tr>
<tr id="i2" 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>&lt;<a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Node.html" title="class in org.apache.storm.scheduler.resource">RAS_Node</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#hostnameToNodes-java.lang.String-">hostnameToNodes</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;hostname)</code>
<div class="block">hostname to Ids.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Node.html" title="class in org.apache.storm.scheduler.resource">RAS_Node</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#idToNode-java.lang.String-">idToNode</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;id)</code>
<div class="block">Find RAS_Node for specified node id.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected <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;<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>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#makeHostToNodeIds-java.util.List-">makeHostToNodeIds</a></span>(<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;<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>&gt;&nbsp;hosts)</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../../../org/apache/storm/scheduler/resource/SchedulingResult.html" title="class in org.apache.storm.scheduler.resource">SchedulingResult</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#mkNotEnoughResources-org.apache.storm.scheduler.TopologyDetails-">mkNotEnoughResources</a></span>(<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td)</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected <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/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#nodeToRack-org.apache.storm.scheduler.resource.RAS_Node-">nodeToRack</a></span>(<a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Node.html" title="class in org.apache.storm.scheduler.resource">RAS_Node</a>&nbsp;node)</code>
<div class="block">Get the rack on which a node is a part of.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected <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;<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#orderExecutors-org.apache.storm.scheduler.TopologyDetails-java.util.Collection-">orderExecutors</a></span>(<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td,
<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/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&gt;&nbsp;unassignedExecutors)</code>
<div class="block">Order executors based on how many in and out connections it will potentially need to make, in descending order.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#prepare-java.util.Map-">prepare</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<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>&gt;&nbsp;config)</code>
<div class="block">Prepare the Strategy for scheduling.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#scheduleExecutor-org.apache.storm.scheduler.ExecutorDetails-org.apache.storm.scheduler.TopologyDetails-java.util.Collection-java.lang.Iterable-">scheduleExecutor</a></span>(<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td,
<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/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&gt;&nbsp;scheduledTasks,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<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>&gt;&nbsp;sortedNodes)</code>
<div class="block">Schedule executor exec from topology td.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<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>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#sortAllNodes-org.apache.storm.scheduler.TopologyDetails-org.apache.storm.scheduler.ExecutorDetails-java.util.List-java.util.List-">sortAllNodes</a></span>(<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td,
<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<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;<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>&gt;&nbsp;favoredNodeIds,
<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;<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>&gt;&nbsp;unFavoredNodeIds)</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/TreeSet.html?is-external=true" title="class or interface in java.util">TreeSet</a>&lt;<a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.ObjectResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.ObjectResources</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#sortNodes-java.util.List-org.apache.storm.scheduler.ExecutorDetails-org.apache.storm.scheduler.TopologyDetails-java.lang.String-java.util.Map-">sortNodes</a></span>(<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;<a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Node.html" title="class in org.apache.storm.scheduler.resource">RAS_Node</a>&gt;&nbsp;availNodes,
<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;topologyDetails,
<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;rackId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicInteger.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicInteger</a>&gt;&nbsp;scheduledCount)</code>
<div class="block">Nodes are sorted by two criteria.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>protected abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/TreeSet.html?is-external=true" title="class or interface in java.util">TreeSet</a>&lt;<a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.ObjectResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.ObjectResources</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html#sortObjectResources-org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy.AllResources-org.apache.storm.scheduler.ExecutorDetails-org.apache.storm.scheduler.TopologyDetails-org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy.ExistingScheduleFunc-">sortObjectResources</a></span>(<a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.AllResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.AllResources</a>&nbsp;allResources,
<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;topologyDetails,
<a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.ExistingScheduleFunc.html" title="interface in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.ExistingScheduleFunc</a>&nbsp;existingScheduleFunc)</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#equals-java.lang.Object-" title="class or interface in java.lang">equals</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#hashCode--" title="class or interface in java.lang">hashCode</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.storm.scheduler.resource.strategies.scheduling.IStrategy">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.storm.scheduler.resource.strategies.scheduling.<a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/IStrategy.html" title="interface in org.apache.storm.scheduler.resource.strategies.scheduling">IStrategy</a></h3>
<code><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/IStrategy.html#schedule-org.apache.storm.scheduler.Cluster-org.apache.storm.scheduler.TopologyDetails-">schedule</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="cluster">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cluster</h4>
<pre>protected&nbsp;<a href="../../../../../../../org/apache/storm/scheduler/Cluster.html" title="class in org.apache.storm.scheduler">Cluster</a> cluster</pre>
</li>
</ul>
<a name="nodes">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>nodes</h4>
<pre>protected&nbsp;<a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Nodes.html" title="class in org.apache.storm.scheduler.resource">RAS_Nodes</a> nodes</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="BaseResourceAwareStrategy--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>BaseResourceAwareStrategy</h4>
<pre>public&nbsp;BaseResourceAwareStrategy()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="prepare-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepare</h4>
<pre>public&nbsp;void&nbsp;prepare(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<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>&gt;&nbsp;config)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/IStrategy.html#prepare-java.util.Map-">IStrategy</a></code></span></div>
<div class="block"><p>Prepare the Strategy for scheduling.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/IStrategy.html#prepare-java.util.Map-">prepare</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/IStrategy.html" title="interface in org.apache.storm.scheduler.resource.strategies.scheduling">IStrategy</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>config</code> - the cluster configuration</dd>
</dl>
</li>
</ul>
<a name="mkNotEnoughResources-org.apache.storm.scheduler.TopologyDetails-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mkNotEnoughResources</h4>
<pre>protected&nbsp;<a href="../../../../../../../org/apache/storm/scheduler/resource/SchedulingResult.html" title="class in org.apache.storm.scheduler.resource">SchedulingResult</a>&nbsp;mkNotEnoughResources(<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td)</pre>
</li>
</ul>
<a name="scheduleExecutor-org.apache.storm.scheduler.ExecutorDetails-org.apache.storm.scheduler.TopologyDetails-java.util.Collection-java.lang.Iterable-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>scheduleExecutor</h4>
<pre>protected&nbsp;boolean&nbsp;scheduleExecutor(<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td,
<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/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&gt;&nbsp;scheduledTasks,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<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>&gt;&nbsp;sortedNodes)</pre>
<div class="block"><p>Schedule executor exec from topology td.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>exec</code> - the executor to schedule</dd>
<dd><code>td</code> - the topology executor exec is a part of</dd>
<dd><code>scheduledTasks</code> - executors that have been scheduled</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if scheduled successfully, else false.</dd>
</dl>
</li>
</ul>
<a name="sortObjectResources-org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy.AllResources-org.apache.storm.scheduler.ExecutorDetails-org.apache.storm.scheduler.TopologyDetails-org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy.ExistingScheduleFunc-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sortObjectResources</h4>
<pre>protected abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/TreeSet.html?is-external=true" title="class or interface in java.util">TreeSet</a>&lt;<a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.ObjectResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.ObjectResources</a>&gt;&nbsp;sortObjectResources(<a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.AllResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.AllResources</a>&nbsp;allResources,
<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;topologyDetails,
<a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.ExistingScheduleFunc.html" title="interface in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.ExistingScheduleFunc</a>&nbsp;existingScheduleFunc)</pre>
</li>
</ul>
<a name="findWorkerForExec-org.apache.storm.scheduler.ExecutorDetails-org.apache.storm.scheduler.TopologyDetails-java.lang.Iterable-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findWorkerForExec</h4>
<pre>protected&nbsp;<a href="../../../../../../../org/apache/storm/scheduler/WorkerSlot.html" title="class in org.apache.storm.scheduler">WorkerSlot</a>&nbsp;findWorkerForExec(<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<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>&gt;&nbsp;sortedNodes)</pre>
<div class="block"><p>Find a worker to schedule executor exec on.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>exec</code> - the executor to schedule</dd>
<dd><code>td</code> - the topology that the executor is a part of</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a worker to assign exec on. Returns null if a worker cannot be successfully found in cluster</dd>
</dl>
</li>
</ul>
<a name="sortNodes-java.util.List-org.apache.storm.scheduler.ExecutorDetails-org.apache.storm.scheduler.TopologyDetails-java.lang.String-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sortNodes</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/TreeSet.html?is-external=true" title="class or interface in java.util">TreeSet</a>&lt;<a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.ObjectResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling">BaseResourceAwareStrategy.ObjectResources</a>&gt;&nbsp;sortNodes(<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;<a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Node.html" title="class in org.apache.storm.scheduler.resource">RAS_Node</a>&gt;&nbsp;availNodes,
<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;topologyDetails,
<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;rackId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicInteger.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicInteger</a>&gt;&nbsp;scheduledCount)</pre>
<div class="block"><p>Nodes are sorted by two criteria.</p><p><p>1) the number executors of the topology that needs to be scheduled is already on the node in descending order. The reasoning to sort based on criterion 1 is so we schedule the rest of a topology on the same node as the existing executors of the topology.</p><p><p>2) the subordinate/subservient resource availability percentage of a node in descending order We calculate the resource availability percentage by dividing the resource availability that have exhausted or little of one of the resources mentioned above will be ranked after on the node by the resource availability of the entire rack By doing this calculation, nodes nodes that have more balanced resource availability. So we will be less likely to pick a node that have a lot of one resource but a low amount of another.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>availNodes</code> - a list of all the nodes we want to sort</dd>
<dd><code>rackId</code> - the rack id availNodes are a part of</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a sorted list of nodes.</dd>
</dl>
</li>
</ul>
<a name="makeHostToNodeIds-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>makeHostToNodeIds</h4>
<pre>protected&nbsp;<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;<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>&gt;&nbsp;makeHostToNodeIds(<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;<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>&gt;&nbsp;hosts)</pre>
</li>
</ul>
<a name="sortAllNodes-org.apache.storm.scheduler.TopologyDetails-org.apache.storm.scheduler.ExecutorDetails-java.util.List-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sortAllNodes</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<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>&gt;&nbsp;sortAllNodes(<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td,
<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&nbsp;exec,
<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;<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>&gt;&nbsp;favoredNodeIds,
<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;<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>&gt;&nbsp;unFavoredNodeIds)</pre>
</li>
</ul>
<a name="nodeToRack-org.apache.storm.scheduler.resource.RAS_Node-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nodeToRack</h4>
<pre>protected&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;nodeToRack(<a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Node.html" title="class in org.apache.storm.scheduler.resource">RAS_Node</a>&nbsp;node)</pre>
<div class="block"><p>Get the rack on which a node is a part of.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>node</code> - the node to find out which rack its on</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the rack id</dd>
</dl>
</li>
</ul>
<a name="orderExecutors-org.apache.storm.scheduler.TopologyDetails-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>orderExecutors</h4>
<pre>protected&nbsp;<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;<a href="../../../../../../../org/apache/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&gt;&nbsp;orderExecutors(<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td,
<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/storm/scheduler/ExecutorDetails.html" title="class in org.apache.storm.scheduler">ExecutorDetails</a>&gt;&nbsp;unassignedExecutors)</pre>
<div class="block"><p>Order executors based on how many in and out connections it will potentially need to make, in descending order. First order components by the number of in and out connections it will have. Then iterate through the sorted list of components. For each component sort the neighbors of that component by how many connections it will have to make with that component. Add an executor from this component and then from each neighboring component in sorted order. Do this until there is nothing left to schedule.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>td</code> - The topology the executors belong to</dd>
<dd><code>unassignedExecutors</code> - a collection of unassigned executors that need to be unassigned. Should only try to assign executors from this list</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a list of executors in sorted order</dd>
</dl>
</li>
</ul>
<a name="getSpouts-org.apache.storm.scheduler.TopologyDetails-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSpouts</h4>
<pre>protected&nbsp;<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;<a href="../../../../../../../org/apache/storm/scheduler/Component.html" title="class in org.apache.storm.scheduler">Component</a>&gt;&nbsp;getSpouts(<a href="../../../../../../../org/apache/storm/scheduler/TopologyDetails.html" title="class in org.apache.storm.scheduler">TopologyDetails</a>&nbsp;td)</pre>
<div class="block"><p>Get a list of all the spouts in the topology.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>td</code> - topology to get spouts from</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a list of spouts</dd>
</dl>
</li>
</ul>
<a name="hostnameToNodes-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hostnameToNodes</h4>
<pre>public&nbsp;<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;<a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Node.html" title="class in org.apache.storm.scheduler.resource">RAS_Node</a>&gt;&nbsp;hostnameToNodes(<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;hostname)</pre>
<div class="block"><p>hostname to Ids.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>hostname</code> - the hostname.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the ids n that node.</dd>
</dl>
</li>
</ul>
<a name="idToNode-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>idToNode</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/storm/scheduler/resource/RAS_Node.html" title="class in org.apache.storm.scheduler.resource">RAS_Node</a>&nbsp;idToNode(<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;id)</pre>
<div class="block"><p>Find RAS_Node for specified node id.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>id</code> - the node/supervisor id to lookup</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a RAS_Node object</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/BaseResourceAwareStrategy.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"><script type="text/javascript" src="../../../../../../../highlight.pack.js"></script>
<script type="text/javascript"><!--
hljs.initHighlightingOnLoad();
//--></script></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../../../../org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.AllResources.html" title="class in org.apache.storm.scheduler.resource.strategies.scheduling"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/storm/scheduler/resource/strategies/scheduling/BaseResourceAwareStrategy.html" target="_top">Frames</a></li>
<li><a href="BaseResourceAwareStrategy.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><a href="#nested.class.summary">Nested</a>&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 ======= -->
<p class="legalCopy"><small>Copyright &#169; 2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>