Plugin development

From MidrangeWiki
Jump to: navigation, search

The Remote System Explorer (RSE) is built on top of Eclipse, and uses the Eclipse user interface, architecture, and frameworks for writing plug-ins.

So, in order to understand how to write extensions (more commonly referred to as "plug-ins") for the Remote Systems Explorer (RSE), you first need to understand Eclipse.

Eclipse is an integrated development environment that was designed to be extended by tool vendors.

The core of Eclipse consists of a platform (the workbench, workspace, UI, etc....) and mechanism for loading plug-ins (OSGi), Java development tools (JDT) and a plug-in development environment (PDE).

The PDE is tools inside of Eclipse that all plug-in developers should use for writing their plug-ins.

If you look at the Eclipse web site you will find a lot of other projects that extend this core platform.

For example: Data tools, Web tools, testing and performance tools, and modeling tools.

It's important to know this so you don't get overwhelmed when visiting the Eclipse web site.

The resources section of the web site provides resources for all these projects.

So you will find articles on things like "How to process OCL Abstract Syntax Trees" which is just darn scary (and completely unrelated) for developers who just want to extend the RSE.

However you will also find articles on "Creating an Eclipse View" which might be exactly what you want to do!

After creating your "Hello World" plug-in, the best place to get started is reading the Eclipse Platform Plug-in Developer Guide.

There is also a ton of resources [1] here.

You need to write your plug-in to match the release of Eclipse it will run on. Check the Eclipse wiki entry for the current cross reference.

There is also a midrange.com hosted mailing list for WDSC / RDi Plug-in Developers ... http://lists.midrange.com/listinfo/wdsc-plugin-dev.

Here you can find a list of vendors / users you have plug-ins for WDSC / RDi.

Community written plug-ins

  • ToPrefixAreaAction Keystroke action to move the cursor between the prefix area and the text area. With step by step instructions for creating.
  • LPEX profile Example of an LPEX profile that runs when opening an editor tab. With step by step instructions for creating.
  • ConvertFixedToFreeAction Example of an early bit of code to convert a fixed spec like D-Spec to free form.

Eclipse SDK examples

Eclipse has a samples plug-in that might be useful for looking at examples of working plug-ins.

Use the Eclipse update manager (not the separate IBM Install manager!) and look for Eclipse Project, then SDK Examples.

As of Eclipse 3.2, the examples provided are:

  • Field assist example
  • Java editor
  • Template editor
  • Multi page editor
  • Property sheet
  • Readme tool
  • Undo example

The Readme tool puts a green bar in the lower left of the workbench that you might find annoying.

To disable the Readme tool, go to

C:\Program Files\IBM\SDP70\plugins\org.eclipse.ui.examples.readmetool_3.2.0.I20060605-1400

and rename plugin.xml to something different like plugin.xml.off.

Restart the Workbench and the message should be gone.

The source for these examples is in

C:\Program Files\IBM\SDP70\plugins\org.eclipse.sdk.examples.source_3.1.100.v20060609m

To disable the FieldAssist plug-in, goto

C:\Program Files\IBM\SDP70\plugins

and rename

org.eclipse.ui.examples.fieldassist_1.0.0.jar to something else, like

org.eclipse.ui.examples.fieldassist_1.0.0.jar.off

and restart the Workbench

External links

Following are links to WDSCz (zSeries) which is close enough to our WDSC / RDi that the tutorials should help.

Be advised that they are for WDSC 6 (Eclipse 3.0) so they are a little different if you are following along on a later version of WDSC / RDi.

Creating user profiles for the LPEX editor in WebSphere Developer for zSeries v6.0

Build extensions for Eclipse one snippet at a time

Extending the LPEX Editor in WebSphere Developer for zSeries v6.0

LPEX User's Guide and Reference

LPEX v3.2.2 JavaDoc (IBM)

LPEX 4.4.0 (RDi 9.6.0) JavaDoc

IBM v5r1 JavaDoc

Eclipse 3.2 Example guide

Eclipse Project update site

Categories