| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
| <title>The Equinox Project - Deactivating plugins</title> |
| <link rel="stylesheet" title="default" href="http://eclipse.org/default_style.css" type="text/css"> |
| </head> |
| <body> |
| <table BORDER=0 CELLSPACING=5 CELLPADDING=2 WIDTH="100%" > |
| <tr> |
| <td ALIGN=left width="60%"> |
| <p><font class=indextop> equinox</font><br> |
| <font class=indexsub> dynamic plugins > state description</font> </p> |
| </td> |
| <td WIDTH="40%"> </td> |
| </tr> |
| </table> |
| |
| <p>The following state diagram describes the various states plugins go through. |
| While these states can be attributed to a given plugin, some states are relative |
| to a given context. For example, a plugin may be enabled in one context and |
| disabled in another.</p> |
| <p>The red arrows indicate state transitions which are currently not possible |
| or require the platform to be shutdown and restarted.<img src="states.gif"/></p> |
| <p/> The events that triggers state changes can be partitioned into three sets |
| relative to the action and the processing done in response to the events. For |
| example, few plugins are interested in the "installation" or "configuration" |
| events. And, the reaction to a "deactivation" event is likely different than |
| the processing of an "unresolved" event. </p> |
| <p/>These event are typically triggered from different roles within the system. |
| For example, someone installing plugins causes install, configure, enable events |
| while system startup triggers resolution and system execution kicks off activation |
| events. </p> |
| The resulting partitions are: |
| <ul> |
| <li>Administration events: installed, uninstalled, configured, unconfigured</li> |
| , enabled, disabled |
| <li>Registry events: resolved, unresolved</li> |
| <li>Plugin events: actived, deactived</li> |
| </ul> |
| </body> |
| </html> |