public class DefaultPool extends NodePool
NodePool.NodeAndSlotCounts, NodePool.RoundRobinSlotSchedulercluster, nodeIdToNode| Constructor and Description |
|---|
DefaultPool() |
| Modifier and Type | Method and Description |
|---|---|
void |
addTopology(TopologyDetails td)
Add a topology to the pool.
|
boolean |
canAdd(TopologyDetails td)
Check if this topology can be added to this pool.
|
NodePool.NodeAndSlotCounts |
getNodeAndSlotCountIfSlotsWereTaken(int slotsNeeded)
Get the number of nodes and slots this would provide to get the slots needed.
|
int |
nodesAvailable()
Get the number of available nodes.
|
void |
scheduleAsNeeded(NodePool... lesserPools)
Reschedule any topologies as needed.
|
int |
slotsAvailable()
Get number of available slots.
|
Collection<Node> |
takeNodes(int nodesNeeded)
Take up to nodesNeeded from this pool.
|
Collection<Node> |
takeNodesBySlots(int slotsNeeded)
Take nodes from this pool that can fulfill possibly up to the slotsNeeded.
|
String |
toString() |
getNodeCountIfSlotsWereTaken, init, nodesAvailable, slotsAvailable, takeNodes, takeNodesBySlotpublic void addTopology(TopologyDetails td)
NodePooladdTopology in class NodePooltd - the topology to addpublic boolean canAdd(TopologyDetails td)
NodePoolpublic Collection<Node> takeNodes(int nodesNeeded)
NodePoolpublic int nodesAvailable()
NodePoolnodesAvailable in class NodePoolpublic int slotsAvailable()
NodePoolslotsAvailable in class NodePoolpublic NodePool.NodeAndSlotCounts getNodeAndSlotCountIfSlotsWereTaken(int slotsNeeded)
NodePoolgetNodeAndSlotCountIfSlotsWereTaken in class NodePoolslotsNeeded - the number of slots neededpublic Collection<Node> takeNodesBySlots(int slotsNeeded)
NodePooltakeNodesBySlots in class NodePoolslotsNeeded - the number of slots that are needed.public void scheduleAsNeeded(NodePool... lesserPools)
NodePoolscheduleAsNeeded in class NodePoollesserPools - pools that may be used to steal nodes from.Copyright © 2023 The Apache Software Foundation. All rights reserved.