Package bluej.extensions2
Class Extension
- java.lang.Object
-
- bluej.extensions2.Extension
-
public abstract class Extension extends java.lang.ObjectDefines the interface between BlueJ and an extension. All extensions must extend this class. A concrete extension class must also have a no-arguments constructor.- Author:
- Clive Miller, University of Kent at Canterbury, 2002, Damiano Bolla, University of Kent at Canterbury, 2003,2004
-
-
Constructor Summary
Constructors Constructor Description Extension()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetDescription()Should return a description of the extension's function.protected static intgetExtensionsAPIVersionMajor()Obtains the major version of the Extensions API.protected static intgetExtensionsAPIVersionMinor()Obtains the minor version of the Extensions API.abstract java.lang.StringgetName()Should return a name for this extension.java.net.URLgetURL()Should return a URL where more information about the extension is available.abstract java.lang.StringgetVersion()Should return the version of the extension.abstract booleanisCompatible()Determines whether this extension is compatible with a particular version of the extensions API.abstract voidstartup(BlueJ bluej)Called when the extension can start its activity.voidterminate()Called when the extension should tidy up and terminate.
-
-
-
Method Detail
-
isCompatible
public abstract boolean isCompatible()
Determines whether this extension is compatible with a particular version of the extensions API. This method is called before the startup() method. An extension can usegetExtensionsAPIVersionMajor()andgetExtensionsAPIVersionMinor()as an aid to determine whether it is compatible with the current BlueJ release.- Returns:
- A boolean value indicating if the extension is compatible with the extension API (
true).
-
getExtensionsAPIVersionMajor
protected static final int getExtensionsAPIVersionMajor()
Obtains the major version of the Extensions API.- Returns:
- An integer indicating the major version of the Extensions API. Currently 3.
-
getExtensionsAPIVersionMinor
protected static final int getExtensionsAPIVersionMinor()
Obtains the minor version of the Extensions API.- Returns:
- An integer indicating the minor version of the Extensions API. Currently 1.
-
startup
public abstract void startup(BlueJ bluej)
Called when the extension can start its activity. This is not called on a separate thread. Extensions should return as quick as possible from this method after creating their own thread if necessary.- Parameters:
bluej- aBlueJobject which serves as the starting point for interactions with BlueJ.
-
terminate
public void terminate()
Called when the extension should tidy up and terminate. When BlueJ decides that this extension is no longer needed it will call this method before removing it from the system. Note that an extension may be reloaded after having been terminated.Any attempt by an extension to call methods on its
BlueJobject after this method has been called will result in an (unchecked)ExtensionUnloadedExceptionbeing thrown by theBlueJobject.
-
getName
public abstract java.lang.String getName()
Should return a name for this extension. This will be displayed in the Help -> Installed Extensions dialog.Please limit the name to between 5 and 10 characters, and bear in mind the possibility of name conflicts.
-
getVersion
public abstract java.lang.String getVersion()
Should return the version of the extension. Please limit the string to between 5 and 10 characters. This will be displayed in the Help -> Installed Extensions dialog
-
getDescription
public java.lang.String getDescription()
Should return a description of the extension's function. It should be a brief statement of the extension's purpose. This will be displayed in the Help -> Installed Extensions dialog
-
getURL
public java.net.URL getURL()
Should return a URL where more information about the extension is available. This will be displayed in the Help -> Installed Extensions dialog.Ideally the information provided at the URL includes a complete manual, possible upgrades and configuration details.
- Returns:
- A
URLobject referring to the URL of the extension,nullif no information is available.
-
-