Difference between revisions of "EnablePluginAutoUpdate"

From Protege Wiki
Jump to: navigation, search
(Create an updates file: added note about readme)
 
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
<div class="orangeBox">
 
<div class="orangeBox">
<span class="orangeBoxTitle">Protege 4 Auto Update</span><br /><br />
+
<span class="orangeBoxTitle">Protege Auto Update</span><br /><br />
 
Help people find your plugin and keep up-to-date with its most recent versions with auto-update.
 
Help people find your plugin and keep up-to-date with its most recent versions with auto-update.
  
'''This feature will be available from build 104 onwards'''.
 
 
</div><br /><br />
 
</div><br /><br />
  
Line 14: Line 13:
 
== What is auto-update? ==
 
== What is auto-update? ==
  
Protege 4 can check the current versions of your installed plugins against a remote registry to determine if a more up-to-date version of the plugin is available.
+
Protege can check for:
 +
* '''Updates''' to see if new versions of your installed plugins are available
 +
* '''Downloads''' to see what other plugins are available for Protege
  
If currently activated, this check will happen whenever you start P4 and you will be presented with a dialog (see right) that allows you to download the most recent versions.
+
When requested you will be presented with a dialog (see right) that allows you to download the plugins.<br />
Updates will take effect the next time you start P4.
+
As the check requires an internet connection it may take several seconds for the dialog to appear.
  
As the check requires an internet connection it may take several seconds for the dialog to appear.
+
* Just select which plugins you would like to update or download
 +
* Updates will take effect the next time you start Protege.
  
You can deactivate the check or reactivate it in the P4 preferences.
+
By default, this check will happen whenever you start Protege (you can turn this off - see below).
  
  
Line 28: Line 30:
 
[[Image:Plugins-preferences.png|right|400px|plugin preferences]]
 
[[Image:Plugins-preferences.png|right|400px|plugin preferences]]
  
If you want to manually check for updates or for new plugin downloads, you can do this in the plugin preferences.
+
You can turn [[EnablePluginAutoUpdate#What_is_auto-update.3F|auto-update]] on and off.
 +
 
 +
If you want to manually check for updates or for new plugin downloads, just click on the appropriate button:
 +
* '''Check for updates''' to see if new versions of your installed plugins are available
 +
* '''Check for downloads''' to see if new plugins you've not yet installed are available
 +
 
 +
You can also select an alternative registry to use to find new plugins.
 +
 
 +
 
 +
=== Plugin registry ===
 +
 
 +
The updates dialog has another tab that allows the user to find all available plugins by way of a registry.
 +
 
 +
The registry is a simple list of URLs that point to all the available plugin updates files.
 +
Actually, it can also point to other registries.
 +
 
 +
Protege allows you to specify the registry that it uses to find downloads (see below).
 +
 
 +
==== Custom registries ====
 +
 
 +
If you are developing a lot of your own plugins, or you are on a project where you want people to have access to plugins on your intranet, you can create your own registry.
 +
This is simply a flat file with a list of URLs on subsequent lines.
  
You can turn auto-update on and off.
+
You can point your registry to any other registry (including the central one if you want) or any number of plugin updates files.
  
You can also change the location of the plugin registry here.
+
Then just instruct everyone to point at your registry instead of the default one in the Plugin preferences.
  
 
<br style="clear: both" />
 
<br style="clear: both" />
 +
 
== Enabling auto-update for a plugin ==
 
== Enabling auto-update for a plugin ==
  
 
Plugin developers can take advantage of this feature with just a few simple steps.
 
Plugin developers can take advantage of this feature with just a few simple steps.
  
 +
=== Create an updates file ===
  
=== Create an updates file ===
+
You should make this file available on the web, somewhere that will not change frequently.
  
 
This is in the form of a java properties file:
 
This is in the form of a java properties file:
Line 63: Line 88:
 
You can use either plain text or very simple html (recommended as this allow you to have links).
 
You can use either plain text or very simple html (recommended as this allow you to have links).
  
You should make this file available on the web, somewhere that will not change frequently.
 
  
 
=== Edit the manifest file for your plugin ===
 
=== Edit the manifest file for your plugin ===
Line 69: Line 93:
 
You now need to point to this file from your manifest.
 
You now need to point to this file from your manifest.
  
Add the following to the manifest file in your plugin (obviously with the location of your file):
+
Add the following to the manifest file in your plugin (obviously with the location of your updates file):
  
 
  Update-Url: http://co-ode-owl-plugins.googlecode.com/svn/trunk/org.coode.annotate/update.properties
 
  Update-Url: http://co-ode-owl-plugins.googlecode.com/svn/trunk/org.coode.annotate/update.properties
  
Now, when your plugin is distributed, its current version is checked against this properties file (which you can update whenever you create a new version).
+
Now, when your plugin is distributed, its current version is checked against this file (which you can update whenever you create a new version).
  
  
== Plugin registry ==
+
=== Getting on the plugin registry ===
  
 
Auto update is good for telling people when a new version of your plugin is out, but how do you get them to download it in the first place?
 
Auto update is good for telling people when a new version of your plugin is out, but how do you get them to download it in the first place?
  
Well, you've already added wiki entries for the plugin, but some users just don't read the documentation.
+
Well, you've already added [[Protege-OWL_4.0|wiki entries]] for the plugin, but its a nightmare to remember to update and some users just don't read the documentation.
 
 
The updates dialog has another tab that allows the user to find all plugins in the registry.
 
 
 
The registry is a simple list of URLs that point to all the available plugins' property files.
 
Actually, it can also point to other registries.
 
  
Just email us at [http://mailman.stanford.edu/mailman/listinfo/p4-feedback p4-feedback] with the location of your properties file and we'll add it to the central registry.
+
Just email us at [https://mailman.stanford.edu/mailman/listinfo/protege-dev protege-dev] with the location of your updates file and we'll add it to the central registry.
You can [http://smi-protege.stanford.edu/svn/*checkout*/protege4/protege-standalone/trunk/plugins.repository browse the central registry here].
+
You can [https://github.com/protegeproject/autoupdate/blob/master/plugins.repository browse the central registry here].
  
 
If you are intent on developing several plugins (good on you) and you don't want to have to request each be added separately, you can create your own registry and we can point to that.
 
If you are intent on developing several plugins (good on you) and you don't want to have to request each be added separately, you can create your own registry and we can point to that.
 
=== Custom registries ===
 
 
If you are developing a lot of your own plugins, or you are on a project where you want people to have access to plugins on your intranet, you can create your own registry.
 
This is simply a flat file with a list of URLs on subsequent lines.
 
 
You can point your registry to any other registry (including the central one if you want) or any number of plugin property files.
 
 
In addition, P4 allows you to specify the registry that it uses to find downloads.
 
You can change this in the Plugins preferences.
 

Latest revision as of 20:52, May 23, 2016

Protege Auto Update

Help people find your plugin and keep up-to-date with its most recent versions with auto-update.



auto-update on startup



What is auto-update?

Protege can check for:

  • Updates to see if new versions of your installed plugins are available
  • Downloads to see what other plugins are available for Protege

When requested you will be presented with a dialog (see right) that allows you to download the plugins.
As the check requires an internet connection it may take several seconds for the dialog to appear.

  • Just select which plugins you would like to update or download
  • Updates will take effect the next time you start Protege.

By default, this check will happen whenever you start Protege (you can turn this off - see below).


Plugin preferences

plugin preferences

You can turn auto-update on and off.

If you want to manually check for updates or for new plugin downloads, just click on the appropriate button:

  • Check for updates to see if new versions of your installed plugins are available
  • Check for downloads to see if new plugins you've not yet installed are available

You can also select an alternative registry to use to find new plugins.


Plugin registry

The updates dialog has another tab that allows the user to find all available plugins by way of a registry.

The registry is a simple list of URLs that point to all the available plugin updates files. Actually, it can also point to other registries.

Protege allows you to specify the registry that it uses to find downloads (see below).

Custom registries

If you are developing a lot of your own plugins, or you are on a project where you want people to have access to plugins on your intranet, you can create your own registry. This is simply a flat file with a list of URLs on subsequent lines.

You can point your registry to any other registry (including the central one if you want) or any number of plugin updates files.

Then just instruct everyone to point at your registry instead of the default one in the Plugin preferences.


Enabling auto-update for a plugin

Plugin developers can take advantage of this feature with just a few simple steps.

Create an updates file

You should make this file available on the web, somewhere that will not change frequently.

This is in the form of a java properties file:

id=org.coode.annotate
version=1.0.4
download=http://co-ode-owl-plugins.googlecode.com/files/org.coode.annotate_1_0_4.zip
name=Annotation Template View
readme=http://co-ode-owl-plugins.googlecode.com/svn/trunk/org.coode.annotate/version-info.txt
license=http://www.gnu.org/licenses/lgpl.html
author=CO-ODE, The University of Manchester

The id must match the id part of the Bundle-SymbolicName in your manifest file

The version should be of the form used in the manifest file MAJOR.MINOR.MICRO[.qualifier]

The download location can point to a jar or a zip file directly containing the plugin jar

Other properties are optional.

If you choose to supply a readme keep the text short so that it will fit the dialog. You can use either plain text or very simple html (recommended as this allow you to have links).


Edit the manifest file for your plugin

You now need to point to this file from your manifest.

Add the following to the manifest file in your plugin (obviously with the location of your updates file):

Update-Url: http://co-ode-owl-plugins.googlecode.com/svn/trunk/org.coode.annotate/update.properties

Now, when your plugin is distributed, its current version is checked against this file (which you can update whenever you create a new version).


Getting on the plugin registry

Auto update is good for telling people when a new version of your plugin is out, but how do you get them to download it in the first place?

Well, you've already added wiki entries for the plugin, but its a nightmare to remember to update and some users just don't read the documentation.

Just email us at protege-dev with the location of your updates file and we'll add it to the central registry. You can browse the central registry here.

If you are intent on developing several plugins (good on you) and you don't want to have to request each be added separately, you can create your own registry and we can point to that.