<!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_162) on Thu Feb 01 21:39:10 KST 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>PendingTaskGroupQueue (Coral Project 0.1-SNAPSHOT API)</title>
<meta name="date" content="2018-02-01">
<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="PendingTaskGroupQueue (Coral Project 0.1-SNAPSHOT API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/PendingTaskGroupQueue.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="../../../../../../edu/snu/coral/runtime/master/scheduler/BatchSingleJobScheduler.html" title="class in edu.snu.coral.runtime.master.scheduler"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../edu/snu/coral/runtime/master/scheduler/RoundRobinSchedulingPolicy.html" title="class in edu.snu.coral.runtime.master.scheduler"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?edu/snu/coral/runtime/master/scheduler/PendingTaskGroupQueue.html" target="_top">Frames</a></li>
<li><a href="PendingTaskGroupQueue.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">edu.snu.coral.runtime.master.scheduler</div>
<h2 title="Interface PendingTaskGroupQueue" class="title">Interface PendingTaskGroupQueue</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../../../edu/snu/coral/runtime/master/scheduler/SingleJobTaskGroupQueue.html" title="class in edu.snu.coral.runtime.master.scheduler">SingleJobTaskGroupQueue</a></dd>
</dl>
<hr>
<br>
<pre>@ThreadSafe
 @DefaultImplementation(value=<a href="../../../../../../edu/snu/coral/runtime/master/scheduler/SingleJobTaskGroupQueue.html" title="class in edu.snu.coral.runtime.master.scheduler">SingleJobTaskGroupQueue.class</a>)
public interface <span class="typeNameLabel">PendingTaskGroupQueue</span></pre>
<div class="block">Keep tracks of all pending task groups.
 <a href="../../../../../../edu/snu/coral/runtime/master/scheduler/Scheduler.html" title="interface in edu.snu.coral.runtime.master.scheduler"><code>Scheduler</code></a> enqueues the TaskGroups to schedule to this queue.
 <a href="../../../../../../edu/snu/coral/runtime/master/scheduler/SchedulerRunner.html" title="class in edu.snu.coral.runtime.master.scheduler"><code>SchedulerRunner</code></a> refers to this queue when scheduling TaskGroups.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/master/scheduler/PendingTaskGroupQueue.html#close--">close</a></span>()</code>
<div class="block">Closes and cleans up this queue.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../edu/snu/coral/runtime/common/plan/physical/ScheduledTaskGroup.html" title="class in edu.snu.coral.runtime.common.plan.physical">ScheduledTaskGroup</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/master/scheduler/PendingTaskGroupQueue.html#dequeue--">dequeue</a></span>()</code>
<div class="block">Dequeues the next TaskGroup to be scheduled.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/master/scheduler/PendingTaskGroupQueue.html#enqueue-edu.snu.coral.runtime.common.plan.physical.ScheduledTaskGroup-">enqueue</a></span>(<a href="../../../../../../edu/snu/coral/runtime/common/plan/physical/ScheduledTaskGroup.html" title="class in edu.snu.coral.runtime.common.plan.physical">ScheduledTaskGroup</a>&nbsp;scheduledTaskGroup)</code>
<div class="block">Enqueues a TaskGroup to this PQ.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/master/scheduler/PendingTaskGroupQueue.html#isEmpty--">isEmpty</a></span>()</code>
<div class="block">Checks whether there are schedulable TaskGroups in the queue or not.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/master/scheduler/PendingTaskGroupQueue.html#onJobScheduled-edu.snu.coral.runtime.common.plan.physical.PhysicalPlan-">onJobScheduled</a></span>(<a href="../../../../../../edu/snu/coral/runtime/common/plan/physical/PhysicalPlan.html" title="class in edu.snu.coral.runtime.common.plan.physical">PhysicalPlan</a>&nbsp;physicalPlanForJob)</code>
<div class="block">Registers a job to this queue in case the queue needs to understand the topology of the job DAG.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../edu/snu/coral/runtime/master/scheduler/PendingTaskGroupQueue.html#removeTaskGroupsAndDescendants-java.lang.String-">removeTaskGroupsAndDescendants</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;stageIdOfTaskGroups)</code>
<div class="block">Removes a stage and its descendant stages from this queue.</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="enqueue-edu.snu.coral.runtime.common.plan.physical.ScheduledTaskGroup-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>enqueue</h4>
<pre>void&nbsp;enqueue(<a href="../../../../../../edu/snu/coral/runtime/common/plan/physical/ScheduledTaskGroup.html" title="class in edu.snu.coral.runtime.common.plan.physical">ScheduledTaskGroup</a>&nbsp;scheduledTaskGroup)</pre>
<div class="block">Enqueues a TaskGroup to this PQ.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>scheduledTaskGroup</code> - to enqueue.</dd>
</dl>
</li>
</ul>
<a name="dequeue--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dequeue</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html?is-external=true" title="class or interface in java.util">Optional</a>&lt;<a href="../../../../../../edu/snu/coral/runtime/common/plan/physical/ScheduledTaskGroup.html" title="class in edu.snu.coral.runtime.common.plan.physical">ScheduledTaskGroup</a>&gt;&nbsp;dequeue()</pre>
<div class="block">Dequeues the next TaskGroup to be scheduled.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an optional of the the next TaskGroup to be scheduled,
 an empty optional if no such TaskGroup exists.</dd>
</dl>
</li>
</ul>
<a name="onJobScheduled-edu.snu.coral.runtime.common.plan.physical.PhysicalPlan-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onJobScheduled</h4>
<pre>void&nbsp;onJobScheduled(<a href="../../../../../../edu/snu/coral/runtime/common/plan/physical/PhysicalPlan.html" title="class in edu.snu.coral.runtime.common.plan.physical">PhysicalPlan</a>&nbsp;physicalPlanForJob)</pre>
<div class="block">Registers a job to this queue in case the queue needs to understand the topology of the job DAG.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>physicalPlanForJob</code> - the job to schedule.</dd>
</dl>
</li>
</ul>
<a name="removeTaskGroupsAndDescendants-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeTaskGroupsAndDescendants</h4>
<pre>void&nbsp;removeTaskGroupsAndDescendants(<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;stageIdOfTaskGroups)</pre>
<div class="block">Removes a stage and its descendant stages from this queue.
 This is to be used for fault tolerance purposes,
 say when a stage fails and all affected TaskGroups must be removed.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>stageIdOfTaskGroups</code> - for the stage to begin the removal recursively.</dd>
</dl>
</li>
</ul>
<a name="isEmpty--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEmpty</h4>
<pre>boolean&nbsp;isEmpty()</pre>
<div class="block">Checks whether there are schedulable TaskGroups in the queue or not.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if there are schedulable TaskGroups in the queue, false otherwise.</dd>
</dl>
</li>
</ul>
<a name="close--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>close</h4>
<pre>void&nbsp;close()</pre>
<div class="block">Closes and cleans up this queue.</div>
</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/PendingTaskGroupQueue.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="../../../../../../edu/snu/coral/runtime/master/scheduler/BatchSingleJobScheduler.html" title="class in edu.snu.coral.runtime.master.scheduler"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../edu/snu/coral/runtime/master/scheduler/RoundRobinSchedulingPolicy.html" title="class in edu.snu.coral.runtime.master.scheduler"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?edu/snu/coral/runtime/master/scheduler/PendingTaskGroupQueue.html" target="_top">Frames</a></li>
<li><a href="PendingTaskGroupQueue.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>Copyright &#169; 2018. All rights reserved.</small></p>
</body>
</html>
