Changes from v3.0 to v3.2 in the Sensoria Development Environment

Differing requirements

  • The SDE 3.2 requires the JDK 1.6, not the JRE, in order to convert JavaScript? to Java. Note that the JDK 6 must be selected in Eclipse (Window > Preferences > Java > Installed JREs...) as default.
  • The SDK 3.2 requires Eclipse 3.4, at least milestone M5, to correctly convert parameter annotations in tools in the development plug-in (due to this bug:

New features in the core

  • Parameters and return types of functions may now have their own descriptions. This addition has resulted in a change of the core extension point – i.e., tool extensions in plugin.xml files need to be re-created using the dev tool. The old descriptions are still valid, though.
  • JavaScripts? which include functions may now be converted on-the-fly to Java classes and used as normal tools.

New features in the UI

  • The UI now shows the names of parameters of functions and a description parameters and return values (if they have been defined within tool definitions).
  • The invocation wizard is able to deal with Arrays and Collections as inputs.
  • The invocation wizard can now add files as various object types which the user may select in the UI.
  • The blackboard has been overhauled to show more meaningful labels of objects. For this to work, a tool must implement the ISensoriaModelHandler interface and the corresponding methods within.
  • Objects returned from scripts or from the black board may now be opened in editors. This function also requires implementing the ISensoriaModelHandler interface.
  • There is a new tool, the SensoriaUIService, which contains 9 functions for working with files in and out of the workspace.

Converting tools

Tools written for 3.0 will work in 3.2 without changes. However, to take advantage of the new functionality it is recommended to convert them as follows.

  • Make sure the tools run within Eclipse 3.4.
  • Update the tool annotations, adding new descriptions for return types and parameters.
  • Create new content for the plugin.xml from these annotations using the DEV plugin.
  • The ID of the core services has changed from ”eu.sensoria-ist.casetool. core.jsShell” to “SensoriaCoreTool?”. Scripts or Java code which use this ID need to be updated.
  • Implement the ISensoriaModelHandler interface in your tool, handling your model objects.
  • Test your tool in the new SDE.