<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
<title>Task Execution (Oomph Setup Documentation)</title>

<link rel="stylesheet" href="../book.css">

<noscript></noscript>
<script type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Task Execution (Oomph Setup Documentation)";
    }
}
</script>
</head>

<body bgcolor="white" onload="windowTitle();">
<!-- <div class="help_breadcrumbs breadcrumbs_top"><a href="../Overview.html" title="Oomph Setup Documentation">Oomph Setup Documentation</a> > <a href="index.html" title="Category in Oomph Setup Documentation">Concepts</a></div> -->

<table border="0">
	<tr>
		<td width="100%"><h1>Task Execution</h1></td>
		<td align="right" valign="middle" nowrap><a href="DocTaskComposition.html" title="Backward to Task Composition"><img src="../../images/backward.png" border="0"></a>&nbsp;<a href="DocTask.html" title="Forward to Tasks"><img src="../../images/forward.png" border="0"></a></td>
	</tr>
</table>
<p>
 The <a href="DocTaskComposition.html" title="Article in Oomph Setup Documentation">gathered</a> task list is prepared to <a href="DocTask.html.performance" title="Section in Oomph Setup Documentation">perform</a> the specified tasks.
 This list is presented to the user on the setup wizard's <a href="../user/wizard/DocConfirmationPage.html" title="Article in Oomph Setup Documentation">progressPage page</a>.
 Initially,
 each task in the list is visited
 to determine if it needs to perform.
 That determination is generally influenced by the <a href="DocTask.html#DocTrigger" title="Chapter in Oomph Setup Documentation">trigger</a>.
 Tasks that don't need to perform are logically removed from the list
 to induce the so called needed task list.
 The progressPage page allows the user to see either the full list or the needed task list.

 Each task remaining in the reduced list of needed tasks
 is then performed.
 </p>

<p align="right">
<a href="DocTaskComposition.html" title="Backward to Task Composition"><img src="../../images/backward.png" border="0"></a>&nbsp;<a href="DocTask.html" title="Forward to Tasks"><img src="../../images/forward.png" border="0"></a></p>
<!-- <div class="help_breadcrumbs breadcrumbs_bottom"><a href="../Overview.html" title="Oomph Setup Documentation">Oomph Setup Documentation</a> > <a href="index.html" title="Category in Oomph Setup Documentation">Concepts</a></div> -->

<div class="copyright">Copyright (c) 2014 Eike Stepper (Loehne, Germany) and others.<br>All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v2.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v20.html</div>
</body>
</html>
