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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (view) (download) (as text)

1 : dbirsan 1.3 <html>
2 :     <head>
3 : dejan 1.1 <title>Eclipse Update Scheduler</title>
4 :     <link rel="stylesheet" href="http://dev.eclipse.org/default_style.css" type="text/css">
5 : dbirsan 1.3 </head>
6 :     <body>
7 : dejan 1.1 <h1>Eclipse Update Scheduler</h1>
8 :     <p>This document describes the new Eclipse 3.0 capability to automatically
9 :     detect and install feature updates. The capability is part of the plan item
10 :     <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=37684">Improve Update
11 :     Manager search</a>.</p>
12 :     <h2>Proposed Behavior</h2>
13 :     <p>Eclipse Update will be able to search for updates to the installed features
14 : dejan 1.2 on a periodic basis without user assistance. The way this search is performed
15 : dejan 1.1 will be configurable by the user via the preference page. Users will be able to
16 :     configure scheduling and downloading options.</p>
17 :     <h3>Scheduling options</h3>
18 :     <p>Each time an Eclipse-based product starts, update scheduler plug-in will
19 :     activate based on the chosen scheduling. Users will be able to choose between:</p>
20 :     <ul>
21 :     <li>No automatic search</li>
22 :     <li>On each startup (default)</li>
23 :     <li>Every day at a specific time (i.e. 3:00PM) *</li>
24 :     <li>On a scheduled day of the week at a specific time (i.e. Monday 8:00AM) *</li>
25 :     </ul>
26 :     <p>* assuming the application is active. If the application is not active at a
27 :     scheduled time and the search is past due, it will immediately start on the next
28 :     startup</p>
29 :     <h3>Downloading options</h3>
30 :     <p>Scheduling options define occurrence of the automated search but do not
31 :     define what is actually happening when the search is due. Downloading options
32 :     control this behavior (this set of options is disabled if automatic search is
33 :     turned off). Users can choose between:</p>
34 :     <ul>
35 :     <li>Search for updates and notify me when they are available (default)</li>
36 :     <li>Download new updates automatically and notify me when ready to install
37 :     them</li>
38 :     </ul>
39 :     <p>In both cases, Update scheduler will create and initiate a search job (using
40 :     the
41 :     <a href="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/platform-core-home/plan_concurrency_intro.html">
42 :     new scheduling API from Platform Core</a>) that will execute in the background
43 :     when it is due based on the scheduling options. There will be no messages if no
44 :     updates were found. If there are updates, the behavior will depend on the
45 :     selected downloading option.</p>
46 :     <h4>Search and notify</h4>
47 :     <p>If search only is selected, a message box will open, notifying user that new
48 :     updates have been found:</p>
49 :     <p><font color="#0000FF">New updates have been found for this product. Do you want to
50 :     download them?</font></p>
51 : dbirsan 1.4 <p><font color="#0000FF">[Yes] [No] </font></p>
52 : dejan 1.1 <p>If 'Yes' is pressed, a Update wizard will open, listing detected updates. The
53 :     same wizard is used when search for updates has been manually initiated using
54 : dbirsan 1.4 Help&gt;Software Updates&gt;Find and Install. </p>
55 :     <p>If 'No' is pressed, dialog will close and the updates ignored.</p>
56 : dejan 1.2 <h4>Download new updates</h4>
57 : dejan 1.1 <p>If the second option has been selected (download updates automatically), the
58 :     search job will be scheduled as before, but when new updates are found, the
59 :     download will commence immediately. When all the features have been successfully
60 :     downloaded into the temp. space, a different message box will show up:</p>
61 :     <p><font color="#0000FF">New updates have been found and downloaded. Do you want to install them?</font></p>
62 : dbirsan 1.4 <p><font color="#0000FF">[Yes] [No] </font></p>
63 : dejan 1.1 <p>If 'No' is pressed, dialog will close and all the data in the temporary space
64 :     will be deleted. If 'Yes' is pressed, installation will commence (only a
65 : dbirsan 1.4 progress monitor will be shown - no wizards). </p>
66 :     <p>If you choose not to install the downloaded features, but later launch the Find and Install
67 :     wizard for updating, the downloaded files will be reused (they're cached), unless there are newer versions
68 :     on the server or you're restarted eclipse. </p>
69 : dbirsan 1.3
70 :     <h4>Issues</h4>
71 :     <ul>
72 :     <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>
73 :     <li>Should jobs should start with a clean slate?
74 :     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>
75 :     <li>The idea of Eclipse scheduled jobs is to avoid modal dialogs, but what if the update notification does happen
76 :     as another modal dialog (wizard, etc.) is up and we choose to launch the install?</li>
77 :     </ul>
78 :     </body>
79 :     </html>