platform-update-home/doc/working/scheduler/scheduler.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (download) (as text) (annotate)
Tue Sep 2 19:56:37 2003 UTC (6 years, 2 months ago) by dbirsan
Branch: MAIN
CVS Tags: v20050526, R3_0, R3_1, v20040514, v20040219, HEAD
Changes since 1.3: +8 -17 lines
*** empty log message ***
<html>
<head>
<title>Eclipse Update Scheduler</title>
<link rel="stylesheet" href="http://dev.eclipse.org/default_style.css" type="text/css">
</head>
<body>	
<h1>Eclipse Update Scheduler</h1>
<p>This document describes the new Eclipse 3.0 capability to automatically 
detect and install feature updates. The capability is part of the plan item
<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=37684">Improve Update 
Manager search</a>.</p>
<h2>Proposed Behavior</h2>
<p>Eclipse Update will be able to search for updates to the installed features 
on a periodic basis without user assistance. The way this search is performed 
will be configurable by the user via the preference page. Users will be able to 
configure scheduling and downloading options.</p>
<h3>Scheduling options</h3>
<p>Each time an Eclipse-based product starts, update scheduler plug-in will 
activate based on the chosen scheduling. Users will be able to choose between:</p>
<ul>
  <li>No automatic search</li>
  <li>On each startup (default)</li>
  <li>Every day at a specific time (i.e. 3:00PM) *</li>
  <li>On a scheduled day of the week at a specific time (i.e. Monday 8:00AM) *</li>
</ul>
<p>* assuming the application is active. If the application is not active at a 
scheduled time and the search is past due, it will immediately start on the next 
startup</p>
<h3>Downloading options</h3>
<p>Scheduling options define occurrence of the automated search but do not 
define what is actually happening when the search is due. Downloading options 
control this behavior (this set of options is disabled if automatic search is 
turned off). Users can choose between:</p>
<ul>
  <li>Search for updates and notify me when they are available (default)</li>
  <li>Download new updates automatically and notify me when ready to install 
  them</li>
</ul>
<p>In both cases, Update scheduler will create and initiate a search job (using 
the
<a href="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/platform-core-home/plan_concurrency_intro.html">
new scheduling API from Platform Core</a>) that will execute in the background 
when it is due based on the scheduling options. There will be no messages if no 
updates were found. If there are updates, the behavior will depend on the 
selected downloading option.</p>
<h4>Search and notify</h4>
<p>If search only is selected, a message box will open, notifying user that new 
updates have been found:</p>
<p><font color="#0000FF">New updates have been found for this product. Do you want to 
download them?</font></p>
<p><font color="#0000FF">[Yes] [No] </font></p>
<p>If 'Yes' is pressed, a Update wizard will open, listing detected updates. The 
same wizard is used when search for updates has been manually initiated using 
Help&gt;Software Updates&gt;Find and Install. </p>
<p>If 'No' is pressed, dialog will close and the updates ignored.</p>
<h4>Download new updates</h4>
<p>If the second option has been selected (download updates automatically), the 
search job will be scheduled as before, but when new updates are found, the 
download will commence immediately. When all the features have been successfully 
downloaded into the temp. space, a different message box will show up:</p>
<p><font color="#0000FF">New updates have been found and downloaded. Do you want to install them?</font></p>
<p><font color="#0000FF">[Yes] [No] </font></p>
<p>If 'No' is pressed, dialog will close and all the data in the temporary space 
will be deleted. If 'Yes' is pressed, installation will commence (only a 
progress monitor will be shown - no wizards). </p>
<p>If you choose not to install the downloaded features, but later launch the Find and Install
wizard for updating, the downloaded files will be reused (they're cached), unless there are newer versions
on the server or you're restarted eclipse. </p>

<h4>Issues</h4>
<ul>
<li>What happens when jobs overlap? When a new update is to be scheduled and the previous job is still running, do we stop that job, or let it run and don't schedule another?</li>	
<li>Should jobs should start with a clean slate? 
	That is, if a previous job has been stopped (see previous issue), should the newly started job use the partial work from the other job?</li>
<li>The idea of Eclipse scheduled jobs is to avoid modal dialogs, but what if the update notification does happen
	as another modal dialog (wizard, etc.) is up and we choose to launch the install?</li>
</ul>
</body>
</html>